简体   繁体   English

如何解决问题当前未启用对实验性语法“classProperties”的支持

[英]How to solve the problem Support for the experimental syntax 'classProperties' isn't currently enabled

I have this error Support for the experimental syntax 'classProperties' isn't currently enabled when I try to run the react js application.我有这个错误当我尝试运行react js应用程序时,当前未启用对实验语法“classProperties”的支持

I am trying to increment the value inside a <span> when I click a `当我单击 ` 时,我试图增加<span>内的值

Here is the code snippet regarding my work...这是关于我的工作的代码片段...

 import React, {Component} from 'react';

 export default class Test extends Component {

  constructor(props) {
    super(props);

    this.state = {
      counter: 0
    }
  }

  handleClick = () =>{ //this is where it triggers the error mentioned above
    this.setState((state) => ({counter: state.counter+1}));
  }


  render() {
    return (
      <div>
        <span>{this.state.counter}</span>
        <input type="button" value={this.props.value}
               onClick={this.handleClick} />
      </div>
    );
  }

}

But I get this error Support for the experimental syntax 'classProperties' isn't currently enabled但我收到此错误当前未启用对实验语法“classProperties”的支持

Can someone please help me?有人可以帮帮我吗?

I have this error Support for the experimental syntax 'classProperties' isn't currently enabled when I try to run the react js application.我有此错误尝试运行react js应用程序时,当前未启用对实验语法'classProperties'的支持

I am trying to increment the value inside a <span> when I click a `单击“`”时,我试图增加<span>的值。

Here is the code snippet regarding my work...这是关于我的工作的代码片段...

 import React, {Component} from 'react';

 export default class Test extends Component {

  constructor(props) {
    super(props);

    this.state = {
      counter: 0
    }
  }

  handleClick = () =>{ //this is where it triggers the error mentioned above
    this.setState((state) => ({counter: state.counter+1}));
  }


  render() {
    return (
      <div>
        <span>{this.state.counter}</span>
        <input type="button" value={this.props.value}
               onClick={this.handleClick} />
      </div>
    );
  }

}

But I get this error Support for the experimental syntax 'classProperties' isn't currently enabled但我收到此错误消息目前未启用对实验语法'classProperties'的支持

Can someone please help me?有人可以帮帮我吗?

You have to be careful about the meaning of this in JSX callbacks.您必须小心 JSX 回调中 this 的含义。 In JavaScript, class methods are not bound by default.在 JavaScript 中,默认情况下不绑定类方法。 If you forget to bind this.handleClick and pass it to onClick, this will be undefined when the function is actually called so you need to write below code in constructor如果忘记绑定 this.handleClick 并将其传递给 onClick,则实际调用该函数时 this 将是未定义的,因此您需要在构造函数中编写以下代码

  constructor(props) {
    super(props);

    this.state = {
      counter: 0
    }
    this.handleClick = this.handleClick.bind(this);
  }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 Laravel:当前未启用对实验语法“classProperties”的支持 - Laravel: Support for the experimental syntax 'classProperties' isn't currently enabled 如何解决当前未启用对实验语法“jsx”的支持 - How to solve Support for the experimental syntax 'jsx' isn't currently enabled “松散”:true 未修复当前未启用对实验性语法“classProperties”的支持 - "loose": true is not fixing Support for the experimental syntax 'classProperties' isn't currently enabled React.js 当前未启用对实验性语法“classProperties”的支持错误 - Support for the experimental syntax 'classProperties' isn't currently enabled error on a React.js 使用 Jest、Babel、Webpack 和 React 进行测试。 当前未启用对实验性语法“classProperties”的支持 - Testing with Jest, Babel, Webpack, and React. Support for the experimental syntax 'classProperties' isn't currently enabled 当前未启用对实验语法“classProperties”的支持 (8:16)。 添加@babel/plugin-proposal-class-properties - Support for the experimental syntax 'classProperties' isn't currently enabled (8:16). Add @babel/plugin-proposal-class-properties 错误:当前未启用对实验性语法“可选链”的支持,但已启用 - Error: Support for the experimental syntax 'optionalChaining' isn't currently enabled, but it is Expo 目前未启用对实验语法“jsx”的支持 - Expo Support for the experimental syntax 'jsx' isn't currently enabled Rails 上的 Ruby “当前未启用对实验语法 'jsx' 的支持” - Ruby on Rails "support for the experimental syntax 'jsx' isn't currently enabled" Angular 13 - 当前未启用对实验语法“importMeta”的支持 - Angular 13 - Support for the experimental syntax 'importMeta' isn't currently enabled
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM