0

在重写我对webpack 编译的所有动态System.import调用失败后:import

Module build failed: SyntaxError: (...)/dashboard.js: Unexpected token (7:4)

   5 | 
   6 | export default Promise.all([
>  7 |     import('charts')
     |     ^


我的webpack.config.js

module: 
{
  loaders: [
    {
      test:    /\.js$/,
      exclude: /node_modules/,
      loader:  'babel-loader'
    },
   (...)
}


.babelrc

{
  "presets": ["es2015"],
  "plugins": ["syntax-dynamic-import", "transform-runtime"]
}


package.json

  "devDependencies": {
    "autoprefixer": "~6.5.3",
    "babel": "^6.5.2",
    "babel-cli": "~6.18.0",
    "babel-core": "^6.25.0",
    "babel-loader": "^7.1.1",
    "babel-plugin-syntax-dynamic-import": "^6.18.0",
    "babel-plugin-transform-runtime": "^6.23.0",
    "babel-preset-es2015": "^6.18.0",      
    "node-sass": "^4.5.3",
    "noty": "~2.4.0",
    "path": "~0.12.7",
    "promise-polyfill": "~6.0.2",
    "resolve-url-loader": "~1.6.0",
    "sass-loader": "~4.0.2",
    "style-loader": "~0.13.1",
    "stylelint": "~7.6.0",
    "tag-it": "~2.0.0",
    "url-loader": "~0.5.7",
    "webpack": "^3.0.0",
    "webpack-dev-server": "~2.2.1",
    "webpack-uglify-js-plugin": "~1.1.9",
    "whatwg-fetch": "~2.0.2"
  },
4

3 回答 3

1

安装这个 babel 插件https://github.com/airbnb/babel-plugin-dynamic-import-node

in .babelrc
{
  "plugins": ["dynamic-import-node"]
}`
于 2019-01-21T07:30:19.953 回答
0

原来我的.babelrc被忽略了,因为这个文件(和 webpack)在我项目的根目录之外。webpack.config.js我通过将配置文件的路径添加到以下位置来修复它babel-loader

{
    test:    /\.js$/,
    exclude: /node_modules/,
    use:     'babel-loader?extends='+path.resolve('./.babelrc')
}
于 2017-07-03T14:15:54.510 回答
-1

你必须像导入一个变压器dynamic-import-webpack。这些插件已经包含所需的语法作为依赖项,因此您的配置可以很简单:

{
  "presets": ["es2015"],
  "plugins": ["dynamic-import-webpack", "transform-runtime"]
}
于 2017-06-30T16:27:14.150 回答