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

Categories

0 votes
604 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 Reply

0 votes
by (71.8m points)

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

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


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

1.4m articles

1.4m replys

5 comments

56.6k users

...