假设我在同一个目录中拥有所有foo.js
、foo.coffee
和foo.json
,并且我require './foo'
从该位置的另一个(coffeescript)文件中说,什么规则控制将加载哪个文件?
一个简短的实验(使用require.resolve './foo'
)似乎表明 javascript 文件胜过其他两个文件。
确实,看起来require.extensions
它似乎 .js
是作为第一项被提到的——但是,对象属性名称在 javascript 中本质上是无序的,对吗?所以添加到该属性的任何名称都可能重新排序条目——这可能会导致另一个解决顺序?
只是想知道,因为我找不到任何文档。当你这样做时它确实变得相关(也许你不应该)coffee --compile route/to/directory
。