为什么在导入JS文件时需要.js扩展名



我正在尝试使用以下链接实现CommonJS模式

https://blog.risingstack.com/node-js-at-scale-module-system-commonjs-require/

我收到错误文件未找到错误为什么? 这是我的代码 https://plnkr.co/edit/mYeCYw9MOr87b4dQZr5I?p=preview 此行上存在错误const add = require('./login')

当我在login后添加.js时,它可以工作,但 例如,它没有添加.js扩展名,为什么? 大多数时候我使用js扩展名。

const add = require('./login')
console.log(add(4, 5))  

如果您希望继续省略.js扩展,则可以在 SystemJS 配置中使用defaultExtension选项。如果我将其添加到您的 plunker 中,它会加载而不会出错:

SystemJS.config({
packages: {
'': {
defaultExtension: "js"
}
}
})

这将定义一个包含所有代码的包,如果未在模块请求中指定其默认扩展名,则.js

根据SystemJS示例,您必须放置整个路径(包括扩展名(。

你可以在这里查看:

https://github.com/systemjs/systemjs

相关内容

  • 没有找到相关文章

最新更新