【问题标题】:Babel-cli class properties are not working with stage-2Babel-cli 类属性不适用于 stage-2
【发布时间】:2016-09-14 13:36:06
【问题描述】:

我有这段代码,我将类属性用于反应组件状态。

class MyComponent extends React.Component {

        state = {
            filter: '',
            searchTerm: ''
        }
    }

当我选择预设 react,stage-2 时,此代码在 babel-repl 中运行良好。但是当我尝试使用 babel-cli 进行转换时它不起作用。我的 package.json 有 -

"scripts": {
  "build": "babel src -d lib"
},
"babel-cli": "^6.14.0",
"babel-plugin-transform-object-assign": "^6.8.0",
"babel-preset-latest": "^6.14.0",
"babel-preset-react": "^6.11.1",
"babel-preset-stage-2": "^6.13.0"

当我运行 npm run build 时,我不断收到此错误,它特别突出了状态变量后的相等运算符。

语法错误:react/Fidelis.K2.Views.React.BrowseCommunities.js:

意外的令牌 (2:14)

1 |类 MyComponent 扩展 React.Component {
2 |状态 = {

3 |过滤器:'',
4 |搜索词:''
5 | }

【问题讨论】:

  • 尝试删除目录node_modules,将npm和node(最好是6.5而不是LTS)升级到最新版本,再次安装模块并检查后将起作用。
  • 您的预设在哪里配置?
  • 节点版本是4.2.1,npm版本是3.7.0。配置的预设为stage-2latest & react

标签: javascript reactjs ecmascript-6 babeljs


【解决方案1】:

找到了。 .babelrc 中没有提到所需的预设

一旦我更新了它,它就可以正常工作了。这是我更新的.babelrc 文件

{
  "presets":  ["latest", "react", "stage-2"],
  "plugins": [
    "transform-object-assign"
  ]
}

【讨论】:

    猜你喜欢
    • 2017-03-15
    • 2017-08-22
    • 2020-05-28
    • 1970-01-01
    • 2014-10-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-12
    相关资源
    最近更新 更多