溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Vue中怎么建立全局引用

發(fā)布時間:2021-07-21 14:24:37 來源:億速云 閱讀:708 作者:Leah 欄目:web開發(fā)

這篇文章將為大家詳細講解有關(guān)Vue中怎么建立全局引用,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關(guān)知識有一定的了解。

1 一般在vue中,有很多vue組件,這些組件每個都是一個文件。都可能需要引用到相同模塊(或者插件)。我們不想每個文件都import 一次模塊。

如果是基于vue.js編寫的插件我們可以用 Vue.use(...)

main.js

Vue中怎么建立全局引用

2 但是如果想添加一個全局命令,同時又讓每個vue的文件都能用到怎么辦?

第一步:最好建立一個全局的命令文件例如:directive/directive.js

第二步:利用Vue.directive()建立一個全局命令,并將它暴露出來,例如一個focus 讓表單自動聚焦

directive.js

Vue中怎么建立全局引用

第三部步:在main.js(入口JS文件)中將它引入,可以省略文件后綴

main.js

Vue中怎么建立全局引用

這樣任何一個Vue文件只要這樣v-focus(命令名),就可以很方便的用到了

Vue中怎么建立全局引用

3 Vue.directive() 的命令一般都是自動運行的或者說初始化等等觸發(fā)的,并不能用于異步事件,怎么辦?

于是我們可以用到'mixins'混合命令,你最好建立一個專門的文件夾用于存放混合命令,例如:

mixins.js

Vue中怎么建立全局引用

比如saveScrollPosition (不是vue中的saveScrollPosition)可以每次在路由跳轉(zhuǎn)之間保存住瀏覽位置信息

注意:vue2.0 中 路由跳轉(zhuǎn)之間會自動保存位置信息 但是有Bug(位置信息之間會相互干擾)。

所以我們從新寫一個saveScrollPosition暴露出去后,在你需要的頁面中混入

Vue中怎么建立全局引用

Vue中怎么建立全局引用

這樣就會很方便。

4 如果你需要應(yīng)用一個插件,同時他并不是基于vue.js的插件命令編寫的,那你可以將它賦予Vue的原型上

例如:我想全局引用axios,我們可以這樣

main.js

Vue中怎么建立全局引用

然后this.$http.get(url) 等等

xxx.vue

Vue中怎么建立全局引用

5 將需要的變量掛在到window對象上

例如:第三方庫Lodash.js,moment.js等等

main.js

Vue中怎么建立全局引用

xxx.vue

Vue中怎么建立全局引用

注意:這種方式不適合服務(wù)端渲染,服務(wù)端并沒有window對象

強調(diào)一點:以上所有的引入都必須通過入口JS文件去引入,這樣才能適用于全局

關(guān)于Vue中怎么建立全局引用就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

vue
AI