http://cn.vuejs.org/v2/guide/...
MyPlugin.install = function (Vue, options) {
// 1. 添加全局方法或属性
Vue.myGlobalMethod = function () {
// 逻辑...
}
// 2. 添加全局资源
Vue.directive('my-directive', {
bind (el, binding, vnode, oldVnode) {
// 逻辑...
}
...
})
// 3. 注入组件
Vue.mixin({
created: function () {
// 逻辑...
}
...
})
// 4. 添加实例方法
Vue.prototype.$myMethod = function (options) {
// 逻辑...
}
}
Apakah perbezaan antara 1, 2 dan 4 di sini?
Biar saya terangkan secara ringkas:
1 Kaedah global boleh difahami sebagai
window.myGlobalMethod
Apabila dipanggil melaluiVue.myGlobalMethod
, ia hanyalah kaedah statik yang ditakrifkan di bawah Vuewindow. myGlobalMethod
一样,通过Vue.myGlobalMethod
来调用,就是一个定义在 Vue 下的静态方法而已2 全局资源,示例中即为定义了一个全局指令,具体可参考 vue 的自定义指令章节,并没有什么不同,只是说在你的插件里还定义了一个指令。当然也可定义过滤器等操作,这全看你这个插件要做什么了
4 实例方法,回想一下 JS 里的类的概念,prototype 原型链的含义,没搞明白的话先去看看这些基础内容。
2 Sumber global Dalam contoh, arahan global ditakrifkan untuk butiran, sila rujuk bab arahan tersuai bagi vue. Sudah tentu, anda juga boleh menentukan penapis dan operasi lain Semuanya bergantung pada perkara yang anda mahu lakukan dengan pemalam ini🎜 🎜4 Kaedah contoh, ingat konsep kelas dalam JS dan maksud rantaian prototaip prototaip Jika anda tidak memahaminya, mari kita lihat kandungan asas ini terlebih dahulu.这里可以这么给你解释,实例方法可以在组件内部,通过
this.$myMethod
.Di sini saya boleh menerangkannya kepada anda kaedah Instance boleh dipanggil di dalam komponen melalui
this.$myMethod
🎜Kaedah global = kaedah statik kelas
Sumber global = arahan global, iaitu arahan yang serupa dengan v-for, tetapi disesuaikan
Kaedah contoh global = kaedah contoh kelas
Perkara kedua, sila lihat terus pada bab arahan tersuai vue 1 dan 3 adalah kandungan JavaScript, sila cari sendiri buku rujukan.
Lihat sahaja kod sumber pemalam