您好,登錄后才能下訂單哦!
1、全局變量專用模塊
意思是說,用一個(gè)模塊(js or vue)管理這套全局變量,模塊里的變量用export (最好導(dǎo)出的格式為對象,方便在其他地方調(diào)用)暴露出去,當(dāng)其它地方需要使用時(shí),用import 導(dǎo)入該模塊
全局變量專用模塊Global.vue
const colorList = [ '#F9F900', '#6FB7B7', ] const colorListLength = 20 function getRandColor () { var tem = Math.round(Math.random() * colorListLength) return colorList[tem] } export default { colorList, colorListLength, getRandColor }
模塊里的變量用出口暴露出去,當(dāng)其它地方需要使用時(shí),引入模塊全球便可。
需要使用全局變量的模塊html5.vue
<template> <ul> <template v-for="item in mainList"> <div class="projectItem" :> <router-link :to="'project/'+item.id"> ![](item.img) <span>{{item.title}}</span> </router-link> </div> </template> </ul> </template> <script type="text/javascript"> import global from 'components/tool/Global' export default { data () { return { getColor: global.getRandColor, mainList: [ { id: 1, img: require('../../assets/rankIcon.png'), title: '登錄界面' }, { id: 2, img: require('../../assets/rankIndex.png'), title: '主頁' } ] } } } </script>
2、全局變量模塊掛載到Vue.prototype 里
Global.js同上,在程序入口的main.js里加下面代碼
import global_ from './components/tool/Global' Vue.prototype.GLOBAL = global_
掛載之后,在需要引用全局量的模塊處,不需再導(dǎo)入全局量模塊,直接用this就可以引用了,如下:
<script type="text/javascript"> export default { data () { return { getColor: this.GLOBAL.getRandColor, mainList: [ { id: 1, img: require('../../assets/rankIcon.png'), title: '登錄界面' }, { id: 2, img: require('../../assets/rankIndex.png'), title: '主頁' } ] } } } </script>
1和2的區(qū)別在于:2不用在用到的時(shí)候必須按需導(dǎo)入全局模塊文件
3、vuex
Vuex是一個(gè)專為Vue.js應(yīng)用程序開發(fā)的狀態(tài)管理模式。它采用集中式存儲(chǔ)管理應(yīng)用的所有組件的狀態(tài)。因此可以存放著全局量。因?yàn)閂uex有點(diǎn)繁瑣,有點(diǎn)殺雞用牛刀的感覺。認(rèn)為并沒有必要。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持億速云。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。