0
我试图用JEST for React设置单元测试。Bable不编译JSX for Jest/React
我的当前设置里面的package.json:
"jest": {
"transform": {
"^.+\\.jsx?$": "babel-jest"
},
"moduleFileExtensions": [
"js",
"json",
"jsx"
]
}
然后里面.babelrc我:
{
"plugins": ["syntax-dynamic-import", "transform-runtime"],
"presets": [
[
"es2015",
{
"modules": false
}
],
"react"
],
"env": {
"test": {
"presets": ["es2015", "react"]
}
}
}
我然后运行NPM测试,并随后开始运行开玩笑。但是,它会报错/不合格: 测试套件未能在
componentDidMount=()=>{
| ^
25 | window.addEventListener('scroll', this.handleScroll)
26 | }
用错误来运行这是告诉我,而测试输入正确的组件,它最终停止在一些ES2015语法。
我有什么设置错了吗?在JEST试图运行它的测试之前,似乎babelrc实际上并没有进行转译?它是否正确? 我的.babelrc位于根级别。
看起来你的代码在“componentDidMount”定义的周围有一些语法错误。如果你的'componentDidMount'被定义为一个对象的属性,你应该使用':'而不是'='。否则,请在此处显示您的代码。 –
@PhilipTzou这只是我的React组件中的componentDidMount react lifecyle方法。运行该应用程序,此方法正常工作,没有错误。 – Srmuhs
'componentDidMount =()=> {...}'代码似乎不正确。你可以发布上下文代码,以便我们可以深入了解它吗? –