Vue.js 插件

2018-04-12 14:21 更新

插件

Vue.js 插件是為應(yīng)用添加全局功能的一種強(qiáng)大而且簡單的方式。

開發(fā)插件

插件通常會為 Vue 添加全局功能。插件的范圍沒有限制——通常是下面幾種:

  1. 添加全局方法或?qū)傩?,?vue-element

  2. 添加全局資源:指令/過濾器/過渡等,如 vue-touch

  3. 添加 Vue 實(shí)例方法,通過把它們添加到 Vue.prototype 上實(shí)現(xiàn)。

  4. 一個庫,提供自己的 API,同時提供上面提到的一個或多個功能,如 vue-router

Vue.js 的插件應(yīng)當(dāng)有一個公開方法 install。這個方法的第一個參數(shù)是 Vue 構(gòu)造器,第二個參數(shù)是一個可選的選項(xiàng)對象:

MyPlugin.install = function (Vue, options) {
  // 1. 添加全局方法或?qū)傩?  Vue.myGlobalMethod = ...
  // 2. 添加全局資源
  Vue.directive('my-directive', {})
  // 3. 添加實(shí)例方法
  Vue.prototype.$myMethod = ...
}

使用插件

通過 Vue.use() 全局方法使用插件:

// 調(diào)用 `MyPlugin.install(Vue)`
Vue.use(MyPlugin)

也可以傳入一個選項(xiàng)對象:

Vue.use(MyPlugin, { someOption: true })

一些插件,如 vue-router,如果 Vue 是全局變量則自動調(diào)用 Vue.use()。不過在模塊環(huán)境中應(yīng)當(dāng)始終顯式調(diào)用 Vue.use()

// 通過 Browserify 或 Webpack 使用 CommonJS 兼容模塊
var Vue = require('vue')
var VueRouter = require('vue-router')

// 不要忘了調(diào)用此方法
Vue.use(VueRouter)

已有插件 & 工具

  • vue-router:Vue.js 官方路由。與 Vue.js 內(nèi)核深度整合,讓構(gòu)建單頁應(yīng)用易如反掌。

  • vue-resource:通過 XMLHttpRequest 或 JSONP 發(fā)起請求并處理響應(yīng)。

  • vue-async-data:異步加載數(shù)據(jù)插件。

  • vue-validator:表單驗(yàn)證插件。

  • vue-devtools:Chrome 開發(fā)者工具擴(kuò)展,用于調(diào)試 Vue.js 應(yīng)用。

  • vue-touch:使用 Hammer.js 添加觸摸手勢指令(已過時)。

  • vue-element:使用 Vue.js 注冊自定義元素。

  • 用戶貢獻(xiàn)的工具
以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號