Babel 生成的代码导致错误 exports is undefined
Babel generated code causes error exports is undefined
运行此代码(从 babel 生成)时出现错误 exports is undefined
Object.defineProperty(exports, '__esModule', {
有什么想法吗?
您很可能没有在支持 CommonJS 模块的环境中执行代码。您可以使用捆绑器,例如 Browserify or webpack
将您的模块捆绑到可以在不同环境中 运行 的东西中。
或者您可以选择其他 module transformer。
使用 webpack
运行npm install -g webpack; npm install -D babel-loader
。然后使用这个 webpack 配置:
// webpack.config.js
module.exports = {
entry: "./path/to/entry/module.js",
output: {
path: __dirname,
filename: "bundle.js"
},
module: {
loaders: [
{ test: /\.js$/, exclude: /node_modules/, loader: "babel-loader"}
]
}
};
运行使用 webpack
命令将转换所有 *.js
可通过带有 babel 的入口文件访问的文件,并将它们捆绑在一起成为 bundle.js
.
我读了一篇关于 ES6 导入和导出如何只能在浏览器中使用 "statically analyzable files" 的文章,因此 Babel 删除了浏览器中的导入和导出支持。与异步或可能的安全性有关?
如果出于开发目的而想跳过服务器端捆绑,可以将
window.MyModule = MyModule
在底部,然后导入
var MyModule = window.MyModule
在下一个文件的顶部
运行此代码(从 babel 生成)时出现错误 exports is undefined
Object.defineProperty(exports, '__esModule', {
有什么想法吗?
您很可能没有在支持 CommonJS 模块的环境中执行代码。您可以使用捆绑器,例如 Browserify or webpack 将您的模块捆绑到可以在不同环境中 运行 的东西中。
或者您可以选择其他 module transformer。
使用 webpack
运行npm install -g webpack; npm install -D babel-loader
。然后使用这个 webpack 配置:
// webpack.config.js
module.exports = {
entry: "./path/to/entry/module.js",
output: {
path: __dirname,
filename: "bundle.js"
},
module: {
loaders: [
{ test: /\.js$/, exclude: /node_modules/, loader: "babel-loader"}
]
}
};
运行使用 webpack
命令将转换所有 *.js
可通过带有 babel 的入口文件访问的文件,并将它们捆绑在一起成为 bundle.js
.
我读了一篇关于 ES6 导入和导出如何只能在浏览器中使用 "statically analyzable files" 的文章,因此 Babel 删除了浏览器中的导入和导出支持。与异步或可能的安全性有关?
如果出于开发目的而想跳过服务器端捆绑,可以将
window.MyModule = MyModule
在底部,然后导入
var MyModule = window.MyModule
在下一个文件的顶部