Ste*_*des 3 ecmascript-6 webpack babeljs babel-loader webpack-4
以下是一些以前在 Babel 6 中适用的功能,但在 Babel 7 中遇到了问题。我正在尝试将(默认)类导出为库。目前,当我尝试导入它时,出现以下错误。
未捕获的语法错误:请求的模块“./dist/datastore.js”不提供名为“default”的导出
我的配置几乎与以前的配置相同,只是使用 Babel 7 进行了更新。
来自 Webpack 的部分:
output: {
path: `${__dirname}/dist`,
filename: `${moduleName}.js`,
library: 'datastore',
libraryExport: 'default',
libraryTarget: 'umd',
umdNamedDefine: true
},
Run Code Online (Sandbox Code Playgroud)
我的入口点的位:
import DataStore from './datastore';
export default DataStore;
Run Code Online (Sandbox Code Playgroud)
.babelrc 中的位:
{
"presets": [
["@babel/preset-env", {
"targets": {
"node": "current"
},
"modules": false
}]
],
"plugins": [
"@babel/plugin-transform-async-to-generator",
"@babel/plugin-transform-destructuring",
"@babel/plugin-proposal-class-properties",
"@babel/plugin-proposal-object-rest-spread"
]
}
Run Code Online (Sandbox Code Playgroud)
有人有主意吗?
小智 5
如果你使用 babel 7 你需要加载这个包:
npm i --save-dev babel-plugin-add-module-exports
Run Code Online (Sandbox Code Playgroud)
然后在你的 babel 配置中添加这个插件“add-module-exports”:
module.exports = {
presets: [
[
'@babel/preset-env',
{
modules: false,
targets: {
browsers: ['last 2 versions', 'safari >= 7']
}
}
]
],
plugins: ['add-module-exports']
};
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6150 次 |
| 最近记录: |