为什么第一种方式可以出来,第二种写法时click无效啊
来源:2-12 自由编程
qq_逃大狗_0
2019-07-03 20:15:18
第一种
<template>
<div>
<div v-html="mgs" @click="cik"></div>
</div>
</template>
<script>
export default {
data () {
return {
mgs: "<div>点击我</div>"
}
},
methods: {
cik () {
alert('我出来了')
}
}
}
</script>
第二种
<template>
<div>
<div v-html="mgs"></div>
</div>
</template>
<script>
export default {
data () {
return {
mgs: '<div @click="cik">点击我</div>'
}
},
methods: {
cik () {
alert('我出来了')
}
}
}
</script>1回答
好帮手慕星星
2019-07-04
你好,是因为第二种v-html插入内容的方法,浏览器将绑定的事件解析成字符串了:

所以点击没有效果。
一般不推荐使用v-html将写好的内容插入进去,这样不太灵活。如果一定要这样写还要绑定事件的话可以绑定在父容器上,例如:

自己测试下,祝学习愉快!
相似问题
回答 1
回答 4