色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

vue invoke

傅智翔2年前9瀏覽0評論

Vue.js是一個漸進式JavaScript 框架。在Vue.js中,invoke()是Vue的一個方法,可以用于調用當前實例上的方法。invoke()接受兩個參數:methodName和args。

Vue.directive('clickout', {
bind: function (el, binding, vnode) {
var cb = binding.value
el.__vueClickOut__ = function (e) {
var isClick_out = !el.contains(e.target)
var isSelf = el === e.target
var isChild = el.contains(e.target)
if (isClick_out && !isSelf && !isChild) {
cb()
}
}
document.addEventListener('click', el.__vueClickOut__)
},
update: function (el, binding) {
el.__vueClickOut__ = binding.value
},
unbind: function (el, binding) {
document.removeEventListener('click', el.__vueClickOut__)
delete el.__vueClickOut__
}
})

在上面的示例中,我們定義了一個全局指令,并使用invoke()方法在綁定(bind)和更新(update)階段執行回調函數。在這個例子中,指令會在點擊元素外面(即目標元素不包含在指令元素內部)時執行指定的回調函數。

當方法名(methodName)是一個字符串時,invoke()會從當前實例上查找這個方法。如果找到了這個方法,則返回方法執行的結果。否則,返回undefined。我們可以使用args參數來傳遞一個數組參數,這些參數將作為方法的參數傳遞。

var vm = new Vue({
methods: {
greet: function (message) {
console.log('Hello ' + message + '!')
}
}
})
vm.$invoke('greet', ['World']) // Hello World!

在上面的示例中,我們定義了一個名為greet的方法,并在vm實例上調用它,并傳遞一個字符串參數'World'。這里使用了invoke()方法來執行greet()函數,而不是直接調用它。

總之,Vue的invoke()方法是非常實用的,并且可以幫助我們管理Vue實例上的方法。我們可以將其用于全局指令、鉤子函數或組件方法等地方,從而提高我們的Vue開發效率。