首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jest不能在react中转换静态

jest不能在react中转换静态
EN

Stack Overflow用户
提问于 2019-01-11 14:05:43
回答 2查看 36关注 0票数 0

下面的代码使用jest失败,我得到了unexpected token error

代码语言:javascript
复制
export default class Search extends Component {
  state = { // problem is here
    q: ''
  }

  onChange = e => {
    this.setState({
      q: e.target.value
    })
  }

  render() {
    return (
      <div>
        <input onChange={this.onChange} placeholder="search" />
      </div>
    )
  }
}

我使用的是babel-7,有没有什么需要我开玩笑的插件?

我使用的是jest版本^23.6.0

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-01-11 14:17:54

如果要使用类属性,则需要添加babel-plugin-transform-class-properties。因此,安装它,然后确保将其作为插件添加到.babelrc文件中,如下所示:

代码语言:javascript
复制
  "plugins": [
    "@babel/plugin-proposal-class-properties"
  ]
票数 0
EN

Stack Overflow用户

发布于 2019-01-11 14:17:50

要么使用构造函数,要么使用this.state定义状态

代码语言:javascript
复制
constructor(props) {
    super(props)    
    this.state = {
        q: ''
    }
}

或者使用https://www.npmjs.com/package/babel-plugin-transform-class-properties

类字段仍然是阶段3提议的https://github.com/tc39/proposal-class-fields

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54141174

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档