国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

Vue插件寫、用詳解(附demo)

2024-05-06 15:19:36
字體:
供稿:網(wǎng)友

Vue插件

1、概述

簡單來說,插件就是指對Vue的功能的增強或補充。

比如說,讓你在每個單頁面的組件里,都可以調(diào)用某個方法,或者共享使用某個變量,或者在某個方法之前執(zhí)行一段代碼等

2、使用方法

總體流程應(yīng)該是:

【聲明插件】——【寫插件】——【注冊插件】——【使用插件】

寫插件和聲明插件是同步的,然后注冊到Vue對象中(不用擔心重復(fù)注冊),最后在寫Vue組件的時候使用寫的插件

聲明插件

先寫一個js文件,這個js文件就是插件文件,里面的基本內(nèi)容如下:

/*  說明: *  插件文件:service.js *  作者:王冬  QQ:20004604 * */export default {  install: function (Vue, options) {    // 添加的內(nèi)容寫在這個函數(shù)里面  }};

其中install的第一個參數(shù)Vue表示的是Vue的實例,第二個參數(shù)表示的是一些設(shè)置選項。

Vue實例好理解,就是Vue對象。

而options設(shè)置選項就是指,在調(diào)用這個插件時,可以傳一個對象。

例如這個對象有一個屬性float,然后在寫插件的一個方法/變量時,我需要輸出一個數(shù)字,然后寫一個if判斷語句,

假如options.float為true時,輸出浮點數(shù);

假如為false或undefined(即沒傳參)時,輸出為整數(shù)。

具體怎么添加,之后再說。

注冊插件

如果使用過Vue-router,就很好理解,通過import引入后,然后通過 Vue.use(插件名) 注冊插件;

例如,我們通常在main.js里引入各種東西,并且組件的根實例也在這里

//main.jsimport Vue from 'vue'import App from './App.vue'//關(guān)鍵是這兩行import service from './service.js'Vue.use(service)new Vue({  el: '#app',  render: (h) => h(App)})

如代碼中注釋所說,關(guān)鍵是通過import導(dǎo)入service文件,然后在創(chuàng)建根組件之前,讓Vue對象通過use方法來注冊插件service。

通過這樣簡單的兩步,就可以使用插件了。

3、寫插件、使用插件

按照官方文檔,寫插件有四種方法,先給出官方的代碼:

//以下內(nèi)容都是添加到上面install的函數(shù)里面的// 1. 添加全局方法或?qū)傩訴ue.myGlobalMethod = function () {  // 邏輯...}// 2. 添加全局資源Vue.directive('my-directive', {  bind (el, binding, vnode, oldVnode) {    // 邏輯...  }  ...})// 3. 注入組件Vue.mixin({  created: function () {    // 邏輯...  }  ...})// 4. 添加實例方法Vue.prototype.$myMethod = function (options) {  // 邏輯...}

先給出最常用的:【4. 添加實例方法】的寫法和使用方法

3.1【添加實例方法或?qū)傩浴?/p>

1、核心思想:

通過prototype來添加方法和屬性。

2、寫:

//讓輸出的數(shù)字翻倍,如果不是數(shù)字或者不能隱式轉(zhuǎn)換為數(shù)字,則輸出nullVue.prototype.doubleNumber = function (val) {  if (typeof val === 'number') {    return val * 2;  } else if (!isNaN(Number(val))) {    return Number(val) * 2;  } else {    return null  }}            
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 锦屏县| 扎鲁特旗| 焦作市| 尉犁县| 文水县| 石首市| 北安市| 花莲县| 聂荣县| 郧西县| 沙湾县| 聂荣县| 溆浦县| 铜梁县| 沙坪坝区| 长春市| 平舆县| 东乌珠穆沁旗| 平原县| 乌兰浩特市| 酒泉市| 渑池县| 新乐市| 宁南县| 六枝特区| 新竹市| 云和县| 苗栗县| 鄯善县| 临高县| 应城市| 商河县| 隆化县| 望城县| 松阳县| 营口市| 朝阳区| 东丽区| 赤壁市| 报价| 闻喜县|