rod*_*ira 5 javascript syntax-error phpstorm react-jsx
我试图有条件地在元素集合上设置属性.
render: {
var buttons = [];
for (var i = 1; i <= this.props.totalWeeks; i++) {
buttons.push(
<button
onClick={ this.changeWeek.bind(this, i) }
disabled={ i === this.state.currWeek }>{ i }
</button>);
}
}
Run Code Online (Sandbox Code Playgroud)
浏览器中的一切都很棒.但PHPStorm(版本8.0.3)将表达式标记{ i === this.state.currWeek }为错误属性值的错误.
我已经尝试用函数调用,变量等来改变它,但似乎无法使错误消失.我也尝试关闭PHPStorm上的检查规则,但找不到一个可以关闭它的设置.
题
如何在PHPStorm中消除该错误?如果这是一个错误,那么如何通过有条件地将HTML属性添加到一组元素中来解决这个问题呢?
小智 0
1)如果它是react的渲染(不是您的自定义函数),则它应该是针对您的代码的“render() { return ; }”
这是 100% 语法错误,浏览器会忽略它,因为它应该,如果你在类定义主体中使用它,语法是下一个:
class Test {
objectExample: { some: "value" }
functionExample() { return someExecutionCode(); }
lambdaFunctionExample = () => { return someExecutionCode(); }
}
Run Code Online (Sandbox Code Playgroud)
但是您同时混合第一行和第二行,从对象定义开始,以主体作为函数,它们彼此不适合。
2)你的渲染函数不返回任何东西,它正在创建数组,但不返回它。