Heim > Artikel > Web-Frontend > So implementieren Sie die ausgewählte Änderungsmethode mithilfe von vue.js
Im Folgenden werde ich einen Artikel über die Verwendung von vue.js zum Ändern des ausgewählten Status veröffentlichen. Er hat einen guten Referenzwert und ich hoffe, dass er für alle hilfreich sein wird.
Nachdem ich den Prototyp zum Ändern des nicht ausgewählten Status verwendet hatte, kam ich mit Vue in Kontakt und fragte mich, ob ich Vue verwenden könnte, um die Funktion zu implementieren. Die Seite im vorherigen Artikel hat die Seite nicht dynamisch implementiert Die Daten waren nicht vorhanden. Sie sind alle direkt in HTML geschrieben. Nach der Verwendung von Vue war es möglich, Seiten basierend auf der Datenmenge dynamisch zu generieren. Und auch die Menge an Code wird stark reduziert.
HTML-Teilecode:
<p data-role="page " class="page "> <p class="center " id="app"> <p class="group "> <ul> <li v-for = "todo in todos "> <p class="groupheader "> <p class="Gheadertext ">{{todo.groupheader}}</p> </p> <p class = "groupbody "> <ul class="list "> <li v-for="cell in todo.groupbody" v-on:click="exchange($event)" class="groupcell"> <p class="celltext"> {{ cell.text }} </p> <img class="selectimg" src="img/select.png "> </li> </ul> </p> </li> </ul> </p> </p> </p>
Datencode:
var datas = { todos :[ { groupheader : 'MB3101', groupbody:[ { text: '调整不当'}, { text: '光电开关损坏' }, { text: '镜面积灰' }, { text: '调整不当' }, { text: '光电开关损坏' }, { text: '镜面积灰' }, { text: '调整不当' }, { text: '光电开关损坏' }, { text: '镜面积灰' }, ] }, { groupheader : 'MB3102', groupbody:[ { text: '调整不当' }, { text: '光电开关损坏' }, { text: '镜面积灰' }, { text: '调整不当' }, { text: '光电开关损坏' }, { text: '镜面积灰' }, { text: '调整不当' }, { text: '光电开关损坏' }, { text: '镜面积灰' }, ] }, { groupheader : 'MB3103', groupbody:[ { text: '调整不当' }, { text: '光电开关损坏' }, { text: '镜面积灰' }, { text: '调整不当' }, { text: '光电开关损坏' }, { text: '镜面积灰' }, { text: '调整不当' }, { text: '光电开关损坏' }, { text: '镜面积灰' }, ] } ] }
JS-Teilecode:
new Vue({ el: '#app', data:datas, methods:{ exchange:function(event){ //获取被点击的元素对象 var a = event.target; //获取被点击元素中的子元素<img> var cellimg = a.getElementsByTagName("img")[0]; if(a.className == "groupcell") { a.className = "selectcell"; cellimg.style.display = "block"; } else if(a.className == "selectcell") { a.className = "groupcell"; cellimg.style.display = "none"; } } } })
Der Effekt ist wie im Bild gezeigt:
Ich habe das Obige für Sie zusammengestellt und hoffe, dass es Ihnen in Zukunft hilfreich sein wird.
Verwandte Artikel:
So verwenden Sie Refs in React-Komponenten
ProxyTable-domänenübergreifende Probleme im vue-cli-Projekt
Express erstellt Abfrageserver
Das obige ist der detaillierte Inhalt vonSo implementieren Sie die ausgewählte Änderungsmethode mithilfe von vue.js. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!