0
动态更改自定义控件样式动态更改自定义控件样式
我正在尝试使用反应将红色边框置于每个空的自定义字段周围。数组this.state.Fields
包含所有要检查的控件。 我想检查每个需要的控件,如果它的值没有设置,请更改它的style
属性。由于性质不能改变,我试图用state
但问题是我需要为每种控制一个单独的vriable:
<Control ref="controlLabel" name="controlLabel" type="1" onComponentMounted={this.register} label="Control Label:" required="1" value={this.state.controlLabel} localChange={this.handleControlLabelChange} inputStyle={{border: this.state.errControlLabelStyle}} />
我想知道如果有一个更优雅的方式来做到这一点?这里是我的代码:
this.state.Fields.forEach((field) => {
if(field.props.required === "1"){
var validField = (field.props.value != '' && field.props.value != undefined);
if(!validField){
//set the field style dynamically
}
}
validForm=validForm && validField;
});
听起来不错,我所要做的是激活代码按钮点击,你的建议会令控制为无效,开始与方式,不是吗? – ElenaDBA
现在是的。为了扩展它,你可以在你的数据对象上添加属性isValid,并在按钮上点击 – baalazamon
来改变它,但是它不会导致我开始使用同样的东西吗?我将添加一个属性到自定义控件,并且为了从父对象中进行更改,我需要使用状态,并且必须为页面上的每个子控件设置单独的状态。 – ElenaDBA