Rumah > Soal Jawab > teks badan
P粉5452181852023-08-21 13:12:17
jawapan juandemarco biasanya betul, tetapi ini ada pilihan lain.
Bina objek mengikut keinginan anda:
var inputProps = { value: 'foo', onChange: this.handleChange }; if (condition) { inputProps.disabled = true; }
Gunakan hamparan untuk rendering, dan anda juga boleh memilih untuk menghantar prop lain.
<input value="这个值会被inputProps覆盖" {...inputProps} onChange={overridesInputProps} />
P粉8632950572023-08-21 11:18:48
Nampaknya, untuk sesetengah sifat, jika nilai yang dihantar kepada React bukan nilai sebenar, React akan secara bijak menghilangkan sifat tersebut. Contohnya:
const InputComponent = function() { const required = true; const disabled = false; return ( <input type="text" disabled={disabled} required={required} /> ); }
Anda akan mendapat:
<input type="text" required>
Kemas kini: Jika sesiapa ingin tahu tentang bagaimana dan mengapa ini berlaku, anda boleh mendapatkan butiran dalam kod sumber ReactDOM, khususnya di baris 30 dan 167 fail DOMProperty.js.