javascript - 警告:道具类型失败:类型为“字符串”的无效道具“错误”预期为“布尔”
问题描述
我的 ReactJS 项目中有一个 material-ui Textfield 组件。
当我运行我的代码时,我在控制台中收到的警告是:
index.js:1 Warning: Failed prop type: Invalid prop `error` of type `string` supplied to `ForwardRef(TextField)`, expected `boolean`.
我的组件代码如下。
<TextField
required
error={errorMessages.myErrorMessage}
helperText={errorMessages.myErrorMessage}
value={myTextField}
/>
这段代码工作得很好,但问题是它在控制台中给出了一条警告消息。
我希望仅当“errorMessages.myErrorMessage”值不是空字符串时才显示错误消息。
是否有任何 ES6 或任何其他解决方案?
解决方案
的error
属性TextField
需要一个布尔值,但您传递给它的是一个字符串。
如果您想在errorMessages.myErrorMessage
不是空字符串时显示错误,您可以检查字符串的长度,例如:
<TextField
required
error={errorMessages.myErrorMessage.length > 0}
helperText={errorMessages.myErrorMessage}
value={myTextField}
/>
或者,您也可以使用!!errorMessages.myErrorMessage
代替errorMessages.myErrorMessage.length > 0
.
这利用了一个空字符串是虚假的,而所有其他字符串都是真实的这一事实
推荐阅读
- .net - 1890年代时间倒流了吗?如何解释负值的 DateTime.ToOADate 令人惊讶的图表?
- qt - 在由布局管理的项目上检测到的锚点。这是未定义的行为;改用 Layout.alignment
- json - 从spark中的json中的数组中提取Json
- c# - “Win32_CDROMDrive”类的“SerialNumber”属性如何在与 WMI 分开请求时返回 null?
- javascript - 使用 Bambora 捕获付款交易时出现“未找到交易”
- python-3.x - 如何将父构造函数的功能继承到子构造函数中
- matlab - MATLAB App - 在创建组件之前添加路径
- jquery - 带分页的 jQuery 数据表
- java - JavaFX ScrollPane 禁用箭头键滚动
- javascript - 调用异步函数