我正在尝试以if语句的方式运行函数,但出现错误:
第89行:希望进行赋值或函数调用,而是看到了 表达式no-unused-expressions
我在哪里弄错了?
这是我的代码:
anim() {
console.log('function running')
}
render() {
function onChange(isVisible) {
isVisible ? (
this.anim()
) : null
}
......
答案 0 :(得分:1)
您不应该声明一个函数,而是渲染方法,而不是在外部声明它
您的渲染函数应该是这样的
render() {
const {isVisible} = this.state;
return(
<div>
{isVisible ? "I'll be printed if visible" : "I'll be printed if false"}
</div>
)}
理想情况下,您应该在onChange函数中更新isVisbile的状态,并在更改状态值时调用render函数,因此将再次执行作为IF语句的三元运算符并进行相应的渲染。
使用三元运算符可以检查所需条件
答案 1 :(得分:0)
您可以这样使用:
render() {
function onChange(isVisible) {
isVisible ? this.anim() : null;
}