vue的外掛程式式很強大的,外掛程式的功能會使用vue全域性物件或者例項來呼叫,或者修改從而在vue的鉤子函式內起作用。vue.install
vue的外掛程式必須提供乙個公開方法install,這個方法在你使用外掛程式,也就是vue.use(外掛程式)
時被呼叫,相當於乙個外掛程式的註冊或者宣告。
// vue => 接受vue構造器
// options => 可選的選項物件
外掛程式.install=function(vue,options)
2.新增全域性資源
vue.directive('my-directive',
})3.新增例項方法,通過把它們新增到vue.prototype實現
vue.prototype.$method=function(options){}
4.通過mixin方法新增元件選項
vue.mixin(
})}複製**
外掛程式有2種方式:
通過vue.use(外掛程式)
全域性方法進行呼叫。一般在main.js中呼叫。
外掛程式自動完成了vue.use()
的呼叫。這種情況下,外掛程式檢測是否存在vue全域性變數,存在就呼叫vue.use()
。如果專案使用script方式引入的vue.js,不再再呼叫vue.use()
。例如:vue-router
使用時直接引入,不需要呼叫vue.use().
但是模組環境下應當始終顯式呼叫該方法,以保證外掛程式可以正常使用:
import vuerouter from 'vue-router'
//呼叫此方法
vue.use(vuerouter)
//或者傳入乙個選項物件
vue.use(vuerouter,)複製**
常見的外掛程式原始碼
看看常見外掛程式的實現,看看原始碼的大概的骨架是怎麼樣的:1.vue-router
let vue
//class
class router={}){}
}//避免重複install,設立flag
router.installed=false
router.install=function(externalvue)
// vue全域性變數時,自動install
if(typeof window!=='undefined' && window.vue)
export de****t router複製**
2.vue-resource
//install方法
function plugin(vue)
}...
// vue全域性變數時,自動install
if(typeof window!=='undefined' && window.vue)
export de****t plugin;複製**
3.vue-touch
var vuetouch={}
vuetouch.config={}
vuetouch.install=function(vue))
}//commonjs形式
if(typeof exports='object')
//amd形式
else
if(typeof define=='function' && define.amd))
}//vue全域性變數時自動呼叫vue.use()
else
if(window.vue) 複製**
複製**
輸出:
plugin activiated
hello jasonho
hello hopkinson複製**
toast製作
下面建立乙個提示(toast)的demo:
"en">"opendefault">預設
"opentop">頭部
"openbottom">尾部
複製**
你真的了解過挖礦嗎? 你又了解多少(一)
前面我說獲取位元幣的主要方法 購買和挖礦兩種。對於數字貨幣的購買,相比我就不用多說了吧 就是在乙個交易平台,購買你所需要的幣種。大部分人都是通過買幣的方式獲取幣種。可以你知道挖礦是低成本獲得幣種嗎?我來詳細說說挖礦的方法吧。挖礦是什麼 挖礦對於剛接觸數字貨幣小白甚至接觸過數字貨幣,都對於挖礦的認知不...
你留意過嗎?
如果你在乙個平凡的家庭長大,如果你的父母還健在,不管你有沒有和他們同住 如果有一天,你發現媽媽的廚房不再像以前那麼乾淨 如果有一天,你發現家中的碗筷好象沒洗乾淨 如果有一天,你發現母親的鍋子不再雪亮 如果有一天,你發現父親的花草樹木已漸荒廢 如果有一天,你發現家中的地板衣櫃經常沾滿灰塵 如果有一天,...
你留意過嗎?
如果你在乙個平凡的家庭長大,如果你的父母還健在,不管你有沒有和他們同住 如果有一天,你發現媽媽的廚房不再像以前那麼乾淨 如果有一天,你發現家中的碗筷好象沒洗乾淨 如果有一天,你發現母親的鍋子不再雪亮 如果有一天,你發現父親的花草樹木已漸荒廢 如果有一天,你發現家中的地板衣櫃經常沾滿灰塵 如果有一天,...