vue.js kann keine Ereignisse auslösen, da Vue es nicht als Vue-Vorlage analysiert und rendert. Die Lösung besteht nicht darin, V-HTML zu verwenden, sondern die Front-End-Daten über die Komponentenvorlage zu kompilieren und zu rendern.
Die Betriebsumgebung dieses Tutorials: Windows7-System, Vue3-Version, DELL G3-Computer.
vue.js v-html kann kein Klickereignis auslösen?
Hintergrund:
Das Backend gibt Daten im HTML-Format an das Frontend zurück, und das Frontend verwendet V-HTML zum Parsen und Rendern, wie zum Beispiel: a>, das Tag kann erfolgreich gerendert werden, seine gebundenen Ereignisse können jedoch nicht ausgelöst werden.
Ursache:
vue hat es nicht analysiert und als Vorlage für Vue gerendert
Lösung:
Verwenden Sie kein V-HTML, sondern Kompilierung von Komponentenvorlagen
Online-Informationen:
<template> <div class="hello"> <h1> 我是父组件 </h1> <div class="parent" id="parent"> </div> </div> </template> <script> import Vue from 'vue'; var MyComponent = Vue.extend({ template: '<a @click="show(1)">我是大魔王</a>', methods: { show(i) { console.log(i); }, } }); var component = new MyComponent().$mount(); export default { data() { return { } }, methods: { }, mounted() { document.getElementById('parent').appendChild(component.$el); } } </script> <style scoped> </style>
Seite:
Konsole:
【Empfohlene verwandte Artikel: vue.js】
Das obige ist der detaillierte Inhalt vonWas soll ich tun, wenn vue.js keine Ereignisse auslösen kann?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!