[英]How to trigger sibling method in Vue.js
我不知道如何在一個組件中觸發同級方法
我有這樣的方法
methods: {
closeModal: function(){
function closeM(){
$('.modal').css({opacity: 0 , 'visibility':'hidden'});
}
closeM();
},
closeOutside: function(){
$(document).mouseup(function (e){
var container1 = $('.modal__box');
if (!container1.is(e.target) &&
container1.has(e.target).length === 0)
{
this.$emit('closeModal',closeM());
}
});
}
}
我的模板
<div class="modal" @click="closeOutside()">
<div class="modal__box z-depth-2 pr">
<div class="modal__header"> {{header}} </div>
<i class="modal__close pa fa fa-times" @click="closeModal() "> </i>
<div class="modal__content">
<slot> </slot>
</div>
</div>
</div>
如何從closeOutside觸發closeModal? 我是 Vue.js 的新手。
在 Vue 中,你所有的方法都將綁定到this
,就像任何數據和計算一樣。 所以你可以使用this.closeModal()
編輯:我創建了一個可能會幫助您入門的小提琴。 注意:這是對您當前解決方案的完全返工,但它是以“vue”方式進行的。
我也是 vue 的新手,所以請隨時改進它。
this.$emit('closeModal',closeM());
替換為
this.$emit('closeModal',this.closeModal());
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.