C'è un modo per aggiungere attributi a un componente React solo se viene soddisfatta una determinata condizione?
Dovrei aggiungere gli attributi obbligatori e readOnly per formare elementi basati su una chiamata Ajax dopo il rendering, ma non riesco a vedere come risolverlo poiché readOnly = "false" non equivale a omettere completamente l'attributo.
L'esempio seguente dovrebbe spiegare quello che voglio, ma non funzionerà (errore di analisi: identificatore imprevisto).
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
, spingi le modifiche (su false) nel negozio di attributi aria / data , ma non viene cambiato nient'altro (come il contenuto del componente o la classe o le variabili) poiché il risultato ReactJs non aggiornerà aria / i dati attirano quei componenti. Ho fatto casino per tutto il giorno per rendermene conto.