javascript - React 程序在 jscomplete.com/repl 上运行良好,但是当我在浏览器中运行时,相同的代码会出现以下错误

标签 javascript reactjs ecmascript-6

React 程序在 jscomplete.com/repl 上运行良好,但当我在浏览器中运行、在编辑器中编写代码并使用 babel 时,相同的代码会出现以下错误。

babel-browser.min.js:41 Uncaught SyntaxError: http://localhost/react1/app.jsx: Unexpected token (2:14)
  1 | class Button extends React.Component{
> 2 |   handleClick = () => {
    |               ^
  3 |     this.props.onClickFunction(this.props.incrementValue);
  4 |   }
  5 |   render() {

最佳答案

该代码中的 handleClick 函数被定义为一个类实例字段,它还不是 JS 的一部分(目前处于第 2 阶段)

要让它工作,你必须用一个包含它的插件配置 Babel(例如,babel-preset-stage-2,或者直接 babel-plugin-transform-class -属性).

或者,在类中使用普通函数定义并将其绑定(bind)到组件构造函数中的this

关于javascript - React 程序在 jscomplete.com/repl 上运行良好,但是当我在浏览器中运行时,相同的代码会出现以下错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43600142/

相关文章:

javascript - @media 查询的更好替代方案?

javascript - 循环 JSON 并写入 Node 中的文件时获取 null

javascript - 如何在输入下显示带有边距顶部的数据列表

javascript - react : Not able to access the value of state variable and each child in an array or iterator should have a unique "key" prop

javascript - new.target 属性在绑定(bind)函数中表现出意外

javascript - 打字太快时不会触发按键事件的功能

javascript - meteor 助手中未拾取 session 变量

javascript - 将 Node Express 服务器上长时间运行的异步函数的进度数据发送到 React 客户端

Javascript/ES6 单一类型数组

javascript - 为什么我不能在箭头函数中访问 `this`?