全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

详解VUE 定义全局变量的几种实现方式

最近在学习VUE.js 中间涉及到JS全局变量,与其说是VUE的全局变量,不如说是模块化JS开发的全局变量。

1、全局变量专用模块

就是以一个特定模块来组织管理这些全局量,需要引用的地方导入该模块便好。

全局变量专用模块 Global.vue

<script type="text/javascript">
const colorList = [
 '#F9F900',
 '#6FB7B7',
 '#9999CC',
 '#B766AD',
 '#B87070',
 '#FF8F59',
 '#FFAF60',
 '#FFDC35',
 '#FFFF37',
 '#B7FF4A',
 '#28FF28',
 '#1AFD9C',
 '#00FFFF',
 '#2894FF',
 '#6A6AFF',
 '#BE77FF',
 '#FF77FF',
 '#FF79BC',
 '#FF2D2D',
 '#ADADAD'
]
const colorListLength = 20
function getRandColor () {
 var tem = Math.round(Math.random() * colorListLength)
 return colorList[tem]
}
export default
{
 colorList,
 colorListLength,
 getRandColor
}
</script>

模块里的变量用export 暴露出去,当其它地方需要使用时,引入模块global便可。

需要使用全局变量的模块 html5.vue

<template>
 <ul>
  <template v-for="item in mainList">
   <div class="projectItem" :style="'box-shadow:1px 1px 10px '+ getColor()">
     <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>
<style scoped type="text/css">
.projectItem
{
 margin: 5px;
 width: 200px;
 height: 120px;
 /*border:1px soild;*/
 box-shadow: 1px 1px 10px;
}
.projectItem a
{
 min-width: 200px;
}
.projectItem a span
{
 text-align: center;
 display: block;
}
</style>

2、全局变量模块挂载到Vue.prototype 里。

Global.js同上,在程序入口的main.js里加下面代码

import global_ from './components/tool/Global'
Vue.prototype.GLOBAL = global_

挂载之后,在需要引用全局量的模块处,不需再导入全局量模块,直接用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>

3、使用VUEX

Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式。它采用集中式存储管理应用的所有组件的状态。因此可以存放着全局量。因Vuex有点繁琐,有点杀鸡用牛刀的感觉。认为并没有必要。

链接:vuex官方介绍

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# VUE  # 全局变量  # vue2.0  # 定义全局变量  # vue.js  # Vue中定义全局变量与常量的各种方式详解  # vue定义全局变量和全局方法的方法示例  # Vue中全局变量的定义和使用  # vue如何定义全局变量和全局方法实例代码  # Vue3定义全局变量的方式总结(附代码)  # Vue全局变量的定义及使用方法  # vue如何定义全局颜色变量并用js修改颜色三种方法  # 里加  # 是一个  # 杀鸡  # 便可  # 不需  # 涉及到  # 专为  # 放着  # 大家多多  # 就可以  # 程序开发  # 牛刀  # 集中式  # FF  # FFFF  # BE77FF  # FF77FF  # A6AFF  # B7FF4A 


相关文章: 深入理解Android中的xmlns:tools属性  在线ppt制作网站有哪些,请推荐几个好的课件下载的网站?  如何快速搭建自助建站会员专属系统?  如何高效生成建站之星成品网站源码?  如何做网站制作流程,*游戏网站怎么搭建?  制作证书网站有哪些,全国城建培训中心证书查询官网?  如何用腾讯建站主机快速创建免费网站?  如何用AWS免费套餐快速搭建高效网站?  python的本地网站制作,如何创建本地站点?  如何生成腾讯云建站专用兑换码?  建站之星安装路径如何正确选择及配置?  宝华建站服务条款解析:五站合一功能与SEO优化设置指南  海南网站制作公司有哪些,海口网是哪家的?  建站VPS推荐:2025年高性能服务器配置指南  如何选择域名并搭建高效网站?  如何通过建站之星自助学习解决操作问题?  如何通过宝塔面板实现本地网站访问?  如何处理“XML格式不正确”错误 常见XML well-formed问题解决方法  矢量图网站制作软件,用千图网的一张矢量图做公司app首页,该网站并未说明版权等问题,这样做算不算侵权?应该如何解决?  Swift中循环语句中的转移语句 break 和 continue  头像制作网站在线观看,除了站酷,还有哪些比较好的设计网站?  如何在七牛云存储上搭建网站并设置自定义域名?  云南网站制作公司有哪些,云南最好的招聘网站是哪个?  mc皮肤壁纸制作器,苹果平板怎么设置自己想要的壁纸我的世界?  如何在Golang中处理模块冲突_解决依赖版本不兼容问题  娃派WAP自助建站:免费模板+移动优化,快速打造专业网站  内部网站制作流程,如何建立公司内部网站?  我的世界制作壁纸网站下载,手机怎么换我的世界壁纸?  c++如何打印函数堆栈信息_c++ backtrace函数与符号名解析【方法】  如何通过二级域名建站提升品牌影响力?  天津个人网站制作公司,天津网约车驾驶员从业资格证官网?  制作企业网站建设方案,怎样建设一个公司网站?  建站主机CVM配置优化、SEO策略与性能提升指南  建站三合一如何选?哪家性价比更高?  南平网站制作公司,2025年南平市事业单位报名时间?  网站制作知乎推荐,想做自己的网站用什么工具比较好?  保定网站制作方案定制,保定招聘的渠道有哪些?找工作的人一般都去哪里看招聘信息?  如何获取免费开源的自助建站系统源码?  怎么制作一个起泡网,水泡粪全漏粪育肥舍冬季氨气超过25ppm,可以有哪些措施降低舍内氨气水平?  css网站制作参考文献有哪些,易聊怎么注册?  青岛网站建设如何选择本地服务器?  如何快速查询网址的建站时间与历史轨迹?  网站制作软件有哪些,制图软件有哪些?  武清网站制作公司,天津武清个人营业执照注销查询系统网站?  建站之星ASP如何实现CMS高效搭建与安全管理?  如何解决ASP生成WAP建站中文乱码问题?  如何获取PHP WAP自助建站系统源码?  SAX解析器是什么,它与DOM在处理大型XML文件时有何不同?  西安大型网站制作公司,西安招聘网站最好的是哪个?  大同网页,大同瑞慈医院官网? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。