Rumah > Soal Jawab > teks badan
Seperti soalan itu, bagaimana saya boleh menukar kelas secara terus menggunakan js asli dan bukannya menggunakan kaedah berikut sebagai tindak balas?
<p className={ this.state.*** ? class1 : class2 }></p>
滿天的星座2017-07-05 11:08:31
<p ref={(p)=>{this.getDom = p}}></p>
...
// 可以在一个事件中通过this.getDom获取当前元素,再通过className设置
this.getDom.className = class1
三叔2017-07-05 11:08:31
Memanipulasi DOM dengan JS asli tidak disyorkan Jika anda benar-benar memerlukan keupayaan ini, anda boleh mendapatkan rujukan kepada nod DOM melalui kaedah findDOMNode
ReactDOM. Contohnya di sini:
https://facebook.github.io/re...
Tetapi ini sememangnya tingkah laku yang berpotensi berisiko [membuka pintu selamat]. Operasi mengubah suai DOM secara langsung melalui JS asli adalah berlebihan, tidak selamat dan tidak konsisten dengan idea React. Adalah disyorkan untuk mempertimbangkan masalah untuk diselesaikan dalam bentuk JSX.
伊谢尔伦2017-07-05 11:08:31
Mesti ada cara lain untuk melakukannya Anda boleh pertimbangkan pakej nama kelas yang digunakan di tingkat atas juga merupakan kaedah biasa