vue界说全局变量

访客4年前黑客资讯803

VUE.js 中涉及到 *** 全局变量


一、全局变量专用模块得引入

全局变量模块 Global.js

const colorList = [
 'violet',
 'orange',
 'blue',
 'darkyellow',
 'wheat',

]
const colorListLength = 5
export default
{
 colorList,
 colorListLength
}

模块里的变量用export 抛出去,当需要使用时,引入模块global。

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

<template>
 <ul>
  <template v-for="item in mainList">
  <div v-for="item in getColor" :key="item">
   {{item}}
  </div>
  </template>
 </ul>
</template>
<script type="text/javascript">
import global_ from './components/Global'
export default {
 data () {
  return {
   getColor: global_.colorList
  }
 }
}
</script>


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

Global.js同上,在main.js里加下面代码



import global_info from './components/Global'
Vue.prototype.GLOBAL = global_info

挂载之后,在需要引用全局量的模块处,不需再导入全局量模块,直接用this就可以,如下:

<script type="text/javascript">
export default {
 data () {
  return {
   getColor: this.GLOBAL.colorList
  }
 }
}
</script>


三、使用VUEX存储状态值

Vuex是一个专门为Vue.js应用程序开发的状态治理模式, 它接纳集中式存储治理所有组件的公共状态, 并以响应的规则保证状态以一种可展望的方式发生变化.

store.js界说

import Vue from "vue";
import Vuex from "vuex";

Vue.use(Vuex);

// 建立vuex的store
export default new Vuex.Store({
  state: {
    count: 1
  },
  // 更改store的状态
  mutations: {
    increment(state) {
      state.count++;
    },
    decrement(state) {
      state.count--;
    }
  },
  // 有异步的时刻, 需要action
  actions: {
    increment(context) {
      context.commit("increment");
    },
    decrement(context) {
      setTimeout(function() {
        context.commit("decrement");
      }, 10);
    }
  },
  // 通过getter 举行数据获取
  getters: {
    getState(state) {
      return state.count > 0 ? state.count : 0;
    }
  }
});

在main.js,引入store.js

import store from "./store/index";

new Vue({
  router,
  store,
  render: h => h(App)
}).$mount("#app");

在页面模块直接使用store挪用

count=this.$store.state.count


四、使用window存储变量

建立 global.js

const config = {
    name:'ochmd',
    age:"num"
}

let bindToGlobal = (obj, key) => {
     if (typeof window[key] === 'undefined') {
         window[key] = {};
     }

     for (let i in obj) {
         window[key][i] = obj[i]
     }
}
bindToGlobal(config,'_const')

在模块页面使用window._const.name //ochmd


思源资源网:分类流动

1.阿里云: 本站现在使用的是阿里云主机,平安/可靠/稳固。点击领取2000米代金券、领会最新阿里云产物的种种优惠流动点击进入

相关文章

大连13岁杀人男孩父母被拘留-13岁杀人男孩父母是

大连13岁男孩杀害9岁女孩案件发生至今已经一年的时间了,案件的发展也一直备受大家的关注,因为凶手是一个13岁的男孩,这也导致了判决的为难,最终法院判决凶者及家属被判赔128万米,凶手进行三年收容教养。...

疥疮是怎么引起的,什么是疥疮!

疥疮是怎么引起的,什么是疥疮!

在现实生活中,经常可以听到有人患上疥疮这种疾病,疥疮的蔓延速度比较快,很多人受到这种疾病的影响,导致身体出现了问题。其实,疥疮是由疥螨在人体皮肤表皮层内引起的接触性传染性皮肤病。并且,疥疮可在家庭及接...

人口普查2020具体内容-人口普查2020怎么填表

人口普查2020具体内容-人口普查2020怎么填表

现在我国正在进行2020年人口普查,这也是我国第七次全国人口普查,今天小编主要给大家介绍的是人口普查2020具体内容,人口普查对我国社会发展来说是非常重要的,我们要积极配合开展2020人口普查工作,那...

《契税法》自明年9月1日起施行 税率将维持不变

近期,十三届全国人大常委会第二十一次会议表决通过了《中华人民共和国契税法》,自2021年9月1日起施行。涉及不动产买卖会遇到契税,契税法来了,到底有何变化?将给百姓带来什么影响? 很多人关心契税税率...

中华黑客网站,黑客能恢复微信删除的聊天记录吗,黑客 暴力破解密码软件下载

在初始化完结之后,操控panel会让进犯者写或上传指令列表或文件到署理。 下图是controPanel函数从输入域TextFields中获取指令,创立新的文件到文件夹waiting。 这类文件的内容会...

iphone怎么越狱?iphone最好用的方法,你一定需要

iphone怎么越狱?iphone最好用的方法,你一定需要

越狱的优缺点 使用iPhone手机人都知道,iPhone手机无法实现对于手机自身文件的管理,无法安装自己喜欢的插件,系统权限也比较低,很难实现更高的系统操作要求。 不越狱我们无法使用第三方应用...