uniapp支付宝小程序组件内监听全局变量

第一步App.vue(定义监听方法)
//APP.vue文件
1、定义监听的变量nickName
2、在methods里定义一个watch方法
<script>
export default {
   
  globalData: {
   
    nickName: "",
  },
  methods: {
   
    watch(methods, istr) {
   
      //methods:组件内的方法;istr:监听的全局变量
      let obj = this.globalData;
      //Object.defineProperty()方法,会直接在一个对象上定义一个新属性,或者修改一个对象的现有属性, 并返回这个对象
      Object.defineProperty(obj, istr, {
   
        // value:"hello", // 属性对应的值,默认为 undefined
        // writable:false, // 默认为 false,表示只读,无法给该属性赋值。在严格模式中,给只读属性赋值会报错。宽松模式中,给只读属性赋值不会生效
        enumerable: true, // 目标属性是否可以被枚举。true | false(使用for...in或Object.keys())
        configurable: true, // 目标属性是否可以被删除或是否可以再次修改特性 true | false
        set: function (value) {
   
          //当设置值的时候触发的函数,设置的新值通过参数value拿到
          this._consumerGoodsStatus = value;
          methods(value);
        },
        get: function (value) {
   
          return this._consumerGoodsStatus;
        },
      });
    },
  },
};
</script>
第二步改变全局变量(getApp().globalData.nickName = data.nickName)
(可根据自己的业务场景修改全局变量)
全局封装的request请求方法 
import AuthService from './auth.service';
import baseUrl from 'envConfig';
import {
    authApi } from "@/api/login";
const handleMessage = (statusCode, data, resolve) => {
   
	let message = "";
	switch (statusCode) {
   
		case 200:
			if (data.code
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值