如何在反应 ts 中将布尔值传递到 Material UI MenuItem 值中?

问题描述

我刚开始反应,在传递一个简单的布尔值作为 Material UI 库中 MenuItem 的道具时遇到了一些麻烦。我不认为解决方案太复杂。有人可以告诉我如何解决错误吗?

错误所指向的行如下所示:

<MenuItem value={true}>Yes</MenuItem>

错误如下:

  The last overload gave the following error.
TS2769: No overload matches this call.
    Type 'true' is not assignable to type 'string | number | readonly string[] | undefined'.
    402 |                                 onChange={handlePO_status}
    403 |                             >
  > 404 |                                 <MenuItem let value={true}>Yes</MenuItem>
        |                                               ^^^^^
    405 |                                 <MenuItem value={false}>No</MenuItem>
    406 |                             </Select>
    407 |                         </FormControl>

任何帮助将不胜感激。谢谢!

解决方法

如错误所述 - value 期望的类型是 string | number | readonly string[] | undefined。因此,您不能将布尔值传递到 value 属性中。

很难从代码片段中判断您要完成什么,但您可能需要重新考虑代码的结构。例如,

<MenuItem onClick={() => handlePO_status(true)}>Yes</MenuItem>
<MenuItem onClick={() => handlePO_status(false)}>No</MenuItem>

相关问答

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