作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一堆 TextInput
字段,在提交表单时,我想突出显示那些留空或内容无效的字段。 (使用边框)
什么是用最少的代码处理这个问题的好方法?
在提交时更新“isEmpty”的状态并有条件地为每个人渲染 css 似乎有点矫枉过正,因为有很多字段。
有没有办法通过 ID
或 name
获取 TextInput
并在 React 中以这种方式动态更新或附加到 CSS 规则原生
最佳答案
个人建议:
1-添加状态errors: []
2- 在提交时,检查 required
值并用自定义数据填充 errors
;示例:
onSubmit() {
let errors = []
let { firstName, lastName } = this.state
if (firstName === ''){
errors.push('firstName')
}
if (lastName === ''){
errors.push('lastName')
}
if (errors.length) {
this.setState({ errors });
return;
}
// API CALL
}
3- 在你的渲染函数中,为你的 TextInput
s
render(){
return (
<TextInput style={{ borderColor: this.state.errors.include('firstName') ? 'red' : 'transparent' }} />
)
}
当然,我建议将样式移至类并使用这些类,但这个示例是实现它们的一个良好开端。
我忘了提到,当您编辑文本框中的任何值以将边框重置为空时,您需要 setState({ errors: [] })
。
关于css - React native - 如果表单提交时为空,则突出显示 TextInput,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56443276/
有没有一种方法可以“标记”对象的属性,使它们在反射中“突出”? 例如: class A { int aa, b; string s1, s2; public int AA
我是一名优秀的程序员,十分优秀!