是否可以将函数传递给 Chakra 的 isInvalid 属性?

问题描述

我有一个受控的脉轮输入组件。如果我将 isInvalid 属性设置为布尔值,我可以正确控制它的外观。

<Input
  isInvalid={true}
  name="nmfc"
  value={inputs.nmfc}
  onChange={handleChange}
/>

然而,一旦我传递了一个函数,它总是显示为无效,即使该函数的计算结果为 false。

<Input
  isInvalid={() => inputs.nmfc === 'illegalvalue'}
  name="nmfc"
  value={inputs.nmfc}
  onChange={handleChange}
/>

我还尝试将变量传递给属性,但未反映对变量的更改。

似乎应该可以动态设置它,因为输入是否有效取决于输入数据的变化。

解决方法

只需传入评估即可:

<Input
  isInvalid={inputs.nmfc === 'illegalvalue'}
  name="nmfc"
  value={inputs.nmfc}
  onChange={handleChange}
/>

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...