webpack 4反应意外令牌......(传播运营商)

时间:2018-05-14 09:56:33

标签: javascript reactjs webpack babeljs

最近,我为Webpack 4应用实施了react设置。

我的webpack.config.js看起来像这样

const HtmlWebPackPlugin = require('html-webpack-plugin');

const htmlWebpackPlugin = new HtmlWebPackPlugin({
  template: './src/index.js',
  filename: './index.html',
});

module.exports = {
  module: {
    rules: [
      {
        test: /\.js$/,
        exclude: /node_modules/,
        use: {
          loader: 'babel-loader',
        },
      },
      {
        test: /\.css$/,
        use: [
          {
            loader: 'style-loader',
          },
          {
            loader: 'css-loader',
            options: {
              modules: true,
              importLoaders: 1,
              localIdentName: '[name]_[local]_[hash:base64]',
              sourceMap: true,
              minimize: true,
            },
          },
        ],
      },
    ],
  },
  plugins: [htmlWebpackPlugin],
};

这是我的package.json脚本

"scripts": {
    "dev": "webpack-dev-server --mode development --open",
    "prod": "webpack --mode production"
}

问题在于,当我使用...(点差运算符)时,它会抛出一个error我相信这是与babel相关的一些未正确转换的内容。任何建议,将不胜感激。感谢。

它会抛出error之类的东西。

 ERROR in ./src/index.js
    Module build failed: SyntaxError: D:/cp/src/index.js: Unexpected token (31:6)

      29 |   return {
      30 |     headers: {
    > 31 |       ...headers,
         |       ^
      32 |       authorization: token ? `Bearer ${token}` : null,
      33 |     },
      34 |   };

2 个答案:

答案 0 :(得分:3)

只需安装babel-plugin-transform-object-rest-spread模块即可。 https://www.npmjs.com/package/babel-plugin-transform-object-rest-spread

然后将其添加到.babelrc:

"plugins": [
    "babel-plugin-transform-object-rest-spread",
  ],

答案 1 :(得分:3)

   "babel-plugin-transform-object-rest-spread"

甚至没有github页面。如果使用此选项,您将在控制台上看到太多输出,并且没有任何选项可以使其静音或使用“ verbose”。我建议你使用
@babel/plugin-transform-spread。然后将其添加到.babelrc

{
  "presets": ["@babel/preset-env", "@babel/preset-react"],
  "plugins": [
    "@babel/plugin-transform-spread"
  ]
}