>我正在尝试以反应风格运行函数if语句,但出现错误:
第 89 行:预期赋值或函数调用,而是看到一个 表达式无未使用的表达式
我错在哪里?
这是我的代码:
anim() {
console.log('function running')
}
render() {
function onChange(isVisible) {
isVisible ? (
this.anim()
) : null
}
......
你不应该声明一个函数,而是渲染方法,而是在外面声明它
你的渲染函数应该是这样的
render() {
const {isVisible} = this.state;
return(
<div>
{isVisible ? "I'll be printed if visible" : "I'll be printed if false"}
</div>
)}
理想情况下,您应该在onChange函数中更新isVibere的状态,当状态值更改时,将调用渲染函数,因此您的三元运算符(即IF语句(将再次执行并相应地呈现。
使用三元运算符,您可以检查所需的条件
你可以
这样使用:
render() {
function onChange(isVisible) {
isVisible ? this.anim() : null;
}