如何在反应风格中运行函数 if 语句



>我正在尝试以反应风格运行函数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;
        }

最新更新