Closed
Description
Version
2.5.13
Reproduction link
https://943ccf3255c84eb994ce69d305048954.production.codepen.codes/
Steps to reproduce
<div id="root"></div>
<script src="vue.js"></script>
<script>
var TestCom = {
template: `<div @click="$emit('test')"><slot /></div>`
}
var vm = new Vue({
data: {ok: true},
el: '#root',
template: `
<test-com v-if="ok" @test="onclick">OK</test-com>
<test-com v-else>Not OK</test-com>
`,
methods: {
onclick() {
console.log('clicked at: ' new Date())
}
},
components: {
TestCom
}
})
setTimeout(() => vm.ok = false, 1000)
</script>
What is expected?
1秒后,页面显示“Not OK”,此时点击后应该没有响应
What is actually happening?
显示“Not OK”,点击后打印日志