Di Bereaksi (kerangka kerja Facebook), saya perlu membuat elemen label terikat ke input teks menggunakan for
atribut standar .
misalnya JSX berikut digunakan:
<label for="test">Test</label>
<input type="text" id="test" />
Namun, ini menghasilkan HTML yang tidak memiliki for
atribut yang diperlukan (dan standar) :
<label>Test</label>
<input type="text" id="test">
Apa yang saya lakukan salah?
label
unsur (seperti dikembalikan olehdocument.createElement
,document.getElementById
, dll) Anda akan mengakses nyafor
properti sebagailabel.htmlFor
.Ya, untuk bereaksi,
for
menjadihtmlFor
class
menjadiclassName
dll.
lihat daftar lengkap bagaimana atribut HTML diubah di sini:
https://facebook.github.io/react/docs/dom-elements.html
sumber
Untuk Bereaksi, Anda harus menggunakannya per kata kunci untuk mendefinisikan atribut html.
digunakan dan
digunakan, karena reaksi adalah case sensitif pastikan Anda harus mengikuti modal kecil dan sesuai kebutuhan.
sumber
keduanya
for
danclass
kata-kata yang dicadangkan dalam JavaScript ini adalah mengapa ketika datang ke atribut HTML di JSX Anda perlu menggunakan sesuatu yang lain, tim Bereaksi memutuskan untuk menggunakanhtmlFor
danclassName
masing - masingsumber
for
adalah kata yang dilindungi undang-undang dalam JavaScript, Bereaksi elemen yang akan digunakanhtmlFor
.": Reactjs.org/docs/dom-elements.html#htmlforhanya menggunakan reaksi
htmlFor
untuk menggantifor
!https://facebook.github.io/react/docs/dom-elements.html#htmlfor
https://github.com/facebook/react/issues/8483
https://github.com/facebook/react/issues/1819
sumber
Itu adalah htmlFor di JSX dan class adalah className di JSX
sumber