Welcome to WuJiGu Developer Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
603 views
in Technique[技术] by (71.8m points)

vue watch 监听只触发一次

### vue2.6.1 使用watch深度监听

  data(){search: { key: "", page: 1} },
  created() {  this.search.page = 1;},
  methods:{ 
  changePage(i) {  this.search.page = this.index(i) },
 //按钮点击事件
 prePage(){ if (this.search.page > 1) {
 //预期触发watch的操作 
 this.search.page = this.search.page - 1; 
 }},

 index(i) { //doing some thing to return a val 
 },
searchData() {  //doing somethind for seaching data
 },
},
 watch: { search: {
                  deep: true,
                  handler(){
                  this.searchData()
                  }
              }
         }

预期在给对象赋值的地方触发watch,但是只在第一次created时触发


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

只watch一次的话,干嘛要watch,你在created里调用函数不就行了

你非要watch的话,就自己手动unwatch吧
https://cn.vuejs.org/v2/api/#vm-watch


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to WuJiGu Developer Q&A Community for programmer and developer-Open, Learning and Share
...