Apakah ada cara untuk hanya menambahkan atribut ke komponen Bereaksi jika kondisi tertentu terpenuhi?
Saya seharusnya menambahkan atribut yang diperlukan dan readOnly untuk membentuk elemen berdasarkan panggilan Ajax setelah render, tapi saya tidak bisa melihat bagaimana menyelesaikannya karena readOnly = "false" tidak sama dengan menghilangkan atribut sepenuhnya.
Contoh di bawah ini harus menjelaskan apa yang saya inginkan, tetapi itu tidak akan berfungsi (Parse Error: Unexpected identifier).
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
, Anda mendorong perubahan (ke false) ke penyimpanan atribut aria / data , tetapi tidak ada yang lain yang diubah (seperti konten komponen atau kelas atau variabel di sana) karena hasilnya ReactJs tidak akan memperbarui aria / attr data dalam komponen itu. Saya telah bermain-main sepanjang hari untuk menyadari hal itu.