传播操作员反应出现意外令牌的错误

use*_*422 16 ecmascript-6 reactjs

这是我包含扩展运算符的代码

style={{ ...styles.detailsRow.icon, alignSelf: 'centre' }}
Run Code Online (Sandbox Code Playgroud)


我需要安装或添加哪些内容才能使其运行?

它的等价物是es2015什么?

con*_*314 21

您需要配置Babel以使用transform-object-rest-spread插件.有关详细信息,请参阅以下链接:https://babeljs.io/docs/plugins/transform-object-rest-spread/

  • 我做了上面的步骤仍然得到相同的错误"意外的令牌这个" (5认同)
  • 你也可以使用babel-preset-stage-0,并将它添加到你的.babelrc````presets":["es2015","react","stage-0"]```运行`npm install - -save-dev babel-preset-stage-0` (3认同)

Jam*_*man 9

您缺少一个babel预设,stage-0

npm install --save-dev babel-preset-stage-0
Run Code Online (Sandbox Code Playgroud)

如果你有.bablerc文件添加到它.

{
  "presets":[
    "es2015", "react", "stage-0"
  ]
}
Run Code Online (Sandbox Code Playgroud)

或者在loader中添加到webpack配置中.

  • 任何遇到此问题的人都应该知道不再支持 babel 预设。https://babeljs.io/blog/2018/07/27/removing-babels-stage-presets (2认同)

ast*_*boy 7

我有同样的问题,我找到的修复是添加experimentalObjectRestSpread到以下ecmaFeatures设置.eslintrc:

"parserOptions": {
  "ecmaVersion": 6,
  "sourceType": "module",
  "ecmaFeatures": {
     "jsx": true,
     "experimentalObjectRestSpread": true
  }
}
Run Code Online (Sandbox Code Playgroud)