当vue项目中需要对某个值进行监听做一些操作的时候我们会用到watch进行监听:
1:监听普通属性:
单一字符串,布尔值,等等
data() {
return {
dvid: '', goodsInfo: [], userInfo:{
}, closeTime:0,//关仓倒计时 } },
watch:{
closeTime(newVal, oldVal){
console.log(`${
newVal} : ${
oldVal}`); } },
注意:watch第一次绑定值的时候不会执行监听,如果需要第一次就执行监听 则需要设置:immediate: true
watch:{
closeTime: {
handler (newName, oldName) {
console.log(`${
newVal} : ${
oldVal}`); }, immediate: true } }
2:监听对象:
监听对象需要用到深度监听 设置deep:true
watch: {
closeTime: {
handler(newName, oldName) {
console.log(`${
newVal} : ${
oldVal}`); }, immediate: true, deep: true } }
可以可以单独监听对象的某个属性 对象.xxx
监听数组:
注意:与对象监听一样 区别在于数组不需要深度监听
tips:watch中不能使用箭头函数 箭头函数this指向为当前作用域
发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/233783.html原文链接:https://javaforall.net