Vue.use()和Vue.prototype使用詳解
Vue.use()作用
官方文檔中提到,Vue.use()可以用來注冊全局的插件。使用Vue.use()后可以使得插件能夠在項目的任意位置上使用。
那么什么時候使用Vue.use()呢?
其實(shí)官方文檔中也給出了很詳細(xì)的答案,就是當(dāng)一個插件對象或者函數(shù),擁有install方法時,就使用Vue.use()。
調(diào)用Vue.use()時會調(diào)用插件的install方法,使得其能夠全局使用。
Vue的使用場景
1.ElementUI、VueRouter等官方插件的使用
在vue官方社區(qū)中提供了一系列輔助開發(fā)的插件,其中就有很多插件具有install方法,比如ElementUI和VueRouter,我們使用Vue.use()進(jìn)行引入。
import Vue from 'vue' import VueRouter from 'vue-router'; import Element from 'element-ui' Vue.use(VueRouter); Vue.use(Element);
2.自定義插件,并提供install方法
除了使用官方的插件,我們也可以自定義一些含有install方法的插件
import Icon from '../components/icon/index' const IconConponents = { // install 是默認(rèn)的方法。當(dāng)外界在 use 這個組件的時候,就會調(diào)用本身的 install 方法,同時傳一個 Vue 這個類的參數(shù)。 install: function (Vue) { Vue.component('Icon', Icon) } } // 導(dǎo)出 export default IconConponents
在main.js中進(jìn)行注冊插件
import Icon from './global' Vue.use(Icon)
Vue.prototype作用
vue.prototype是一種注冊全局變量的方式,使用vue.prototype的變量可以全局訪問。最典型的例子就是axios。
import axios from 'axios'; Vue.prototype.$http = axios;
注冊了axios之后就能在項目的位置使用了,使用的方法:
調(diào)用this.$http進(jìn)行訪問。
實(shí)際上我們還要注意,使用Vue.prototype注冊的全局變量前面都要加上$符號,這是一種規(guī)范,主要是為了防止命名沖突。
Vue.use()和Vue.prototype的區(qū)別
講到這里,我們仔細(xì)看看這兩個方法的區(qū)別。
其實(shí)很顯而易見,Vue.use()用于注冊具有install方法的變量,注冊后install函數(shù)會自動調(diào)用,使得install的具體變量能夠全局使用,包括全局變量,全局標(biāo)簽等等。
而Vue.prototype就是一個注冊全局變量的方法,注冊的全局的變量以$開頭,調(diào)用this方法調(diào)用。
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
一篇文章告訴你如何實(shí)現(xiàn)Vue前端分頁和后端分頁
這篇文章主要為大家介紹了如何實(shí)現(xiàn)Vue前端分頁和后端分頁,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助2021-12-12Vue?處理異步加載順序問題之如何在Konva中確保文本在圖片之上顯示
在處理Konva中的異步加載順序問題時,確保在圖像加載完成后再添加其他元素是關(guān)鍵,通過將回調(diào)函數(shù)放在imageObj.onload中,并正確處理變量捕獲,我們可以確保文本總是繪制在圖片之上,這不僅解決了顯示順序的問題,也為未來的調(diào)試提供了明確的方向,感興趣的朋友一起看看吧2024-07-07Vue修改iview組件的樣式的兩種方案(element同)
使用vue必然會用到等iview組件庫,但是iview的組件的樣式跟自己寫的div的樣式修改不太一樣,所以本文給大家介紹了Vue修改iview組件的樣式的兩種方案(element同),需要的朋友可以參考下2024-04-04Vue v-for循環(huán)之@click點(diǎn)擊事件獲取元素示例
今天小編就為大家分享一篇Vue v-for循環(huán)之@click點(diǎn)擊事件獲取元素示例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-11-11vue.js頁面加載執(zhí)行created,mounted的先后順序說明
這篇文章主要介紹了vue.js頁面加載執(zhí)行created,mounted的先后順序說明,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-11-11