簡體   English   中英

如何在 Vue 中獲得 ReactJS prevProps 和 prevState 等效項

[英]How can I get ReactJS prevProps and prevState equivalent in Vue

我想在我的 state 更新中的某個值時發出網絡請求。 我希望僅在特定值更改時才調用網絡請求 function 。 在 React 我做這樣的事情

componentDidUpdate(prevProps, prevState){
  if(prevState.update !== this.state.update){
   // Fetch data...
  }
}

我如何在 Vue 中復制它,我可以從updated()生命周期鈎子中做到這一點嗎? 我似乎無法捕捉到以前的道具或 state 值

你可以使用觀察者 你也可以看看下面的例子:

new Vue({
    el: '#app',
  data() {
    return {
        message: 'initial message'
    }
  },
  watch:{
    message(newVal, oldVal){
        if(oldVal != newVal) {
        console.log('message updated.');
        console.log('oldVal:', oldVal);
        console.log('newVal:', newVal);
      }
    }
  },
  mounted() {
    setTimeout(()=>{
        this.message = 'updated message'
    }, 3000);
  }
});

這是jsfiddle

您可以閱讀有關手表 api 的更多信息

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM