gpt4 book ai didi

javascript - vue.js $emit 自定义事件不工作

转载 作者:行者123 更新时间:2023-11-30 15:25:45 27 4
gpt4 key购买 nike

我是 vue.js 的新手 (2)。我正在写 Vanilla JS。

当我尝试使用自定义事件(关闭)时,出现“, expected” 和“: expected” 的语法错误。我想要的是将自定义关闭事件添加到 View 中的组件。然后,在组件的模板中,我尝试让点击事件到达自定义关闭事件。它不工作..

HTML

<div id="root" class="container">
<bulma-modal v-if="showBulmaModal" @close="showBulmaModal = false"></bulma-modal>
<button @click="showBulmaModal = true" class="button">Show modal</button>
</div>

JS

Vue.component('bulma-modal', {
template: '<div class="modal is-active"><div class="modal-background"></div><div class="modal-content"><div class="box"><p>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</p></div></div><button class="modal-close" @click="$emit('close')"></button></div>'
});

new Vue({
el: '#root',
data: {
showBulmaModal: false
}
});

有什么东西我看不到或者我做错了吗?我做不对..

最佳答案

您需要转义您在模板中使用的单引号。

template: '<div class="modal is-active"><div class="modal-background"></div><div class="modal-content"><div class="box"><p>Lorem ipsum dolor sit amet, consectetur adipiscing elit.</p></div></div><button class="modal-close" @click="$emit(\'close\')">Close</button></div>'

这是您的代码 working .

关于javascript - vue.js $emit 自定义事件不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43011627/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com