如果满足特定条件,是否有办法仅将属性添加到React组件?
我应该在渲染后基于Ajax调用将required和readOnly属性添加到表单元素中,但是由于readOnly =“ false”与完全省略该属性不同,因此我看不到如何解决此问题。
下面的示例应该解释我想要的内容,但是它不起作用(解析错误:意外的标识符)。
var React = require('React');
var MyOwnInput = React.createClass({
render: function () {
return (
<div>
<input type="text" onChange={this.changeValue} value={this.getValue()} name={this.props.name}/>
</div>
);
}
});
module.exports = React.createClass({
getInitialState: function () {
return {
isRequired: false
}
},
componentDidMount: function () {
this.setState({
isRequired: true
});
},
render: function () {
var isRequired = this.state.isRequired;
return (
<MyOwnInput name="test" {isRequired ? "required" : ""} />
);
}
});
aria-modal=true
,您将更改(为false)推送到aria / data属性存储,但其他没有更改(例如组件的内容或其中的类或变量),因为结果ReactJs不会更新aria / 该组件中的数据属性。我整天都在忙着意识到这一点。