vue监听watch与computed、this.$set设置响应式数据

  • Post author:
  • Post category:vue



一、watch监听

1.监听基本数据类型:数值(number)、字符串(string)、布尔值(boolean)

// 数据
data:{
	num:0
}

// 监听
watch: {
//num发生改变这个函数就会执行
num: function (newNum, oldNum) {
	// newNum:num更新后的值 oldNum:num更新前的值
	console.log(newNum, oldNum)
  }
}

2、监听引用数据类型:对象(Object)、数组(Array)

data:{
	ulrData: {}
},
//监听对象
watch: {
    // 键路径: 监听路由携带参数的变化(当页面加载完毕或者手动改变路由传参在地址栏按回车键时执行)
    '$route.query.params': {
      handler(newVal, oldVal) {
        this.ulrData = JSON.parse(this.$route.query.params)
        this.getXXX(this.ulrData.id, this.ulrData.date, this.ulrData.dateType)
      }
    },
    deep: true //深度监听
  },

//监听数组变化(不常用)
watch: {
    arr: {
        deep: true,
        handler(newArray, oldArray) {
        
        }
    }
},

mounted() {
    this.ulrData = JSON.pa



版权声明:本文为qq_33911541原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。