Vue项目在组件中使用全局变量

一、定义全局变量

新建一个 testData.js 文件来定义变量名和方法

export default {
  info: '空',
  setInfo(info) {
    this.info = info;
  }
}

在 main.js 中引入并设为全局变量

import globalData from './utils/testData';
Vue.prototype.globalData = globalData;

二、使用全局变量

效果:当进入Test1组件后会自动将全局变量info改为“子页面”

<template>
  <div>
    Test1
    <h1>旧的全局变量:{{oldParam}}</h1>
    <h1 :v-model="param">新的全局变量:{{param}}</h1>
  </div>
</template>

<script>
export default {
  name: "Test1",
  data() {
    return {
      oldParam: '',
      param: this.globalData.info,
    };
  },
  methods: {
    init() {
      this.globalData.setInfo("子页面");
      this.param = this.globalData.info;
    },
  },
  created(){
    // 保存旧值
    this.oldParam = this.globalData.info;
    // 根据当前页更新全局变量的值
    this.init();
  }

};
</script>

<style scoped>
</style>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值