vue.js ne peut pas déclencher l'événement car vue ne l'analyse pas et ne le restitue pas en tant que modèle de vue. La solution n'est pas d'utiliser v-html, mais de compiler et de restituer les données frontales via le modèle de composant. .
L'environnement d'exploitation de ce tutoriel : système windows7, version vue3, ordinateur DELL G3.
vue.js v-html ne peut pas déclencher un événement de clic ?
Contexte :
Le backend renvoie les données au format HTML au frontend, et le frontend utilise v-html pour analyser et restituer, tel que : , la balise a peut être rendue avec succès, mais l'événement qui lui est lié ne peut pas être déclenché.
Cause :
vue ne l'a pas analysé et rendu comme modèle pour vue
Solution :
Compiler le modèle de composant au lieu de v-html
Contenu en ligne :
<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>
Page :
Console :
[Articles connexes recommandés : vue.js]
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!