vue父向子傳值,子組件無法及時更新父組件傳過來的值的問題


 由於頁面內的表格是根據elementUI二次封裝的組件,表格的請求地址需要在父組件頁面判斷修改並傳給子組件,結果發現需要點擊兩次,子組件的請求地址才會改變。

原寫法:

 1 search: {
 2       deep: true,
 3       handler(params) {
 4         this.url =
 5           this.type == 1
 6             ? "url1"
 7             : "url2";
 8             this.main.load(params);
 9         });
10       }
11     }

子組件拿到的url未更新,load方法還是請求之前的url地址。

修改后的寫法:

search: {
      deep: true,
      handler(params) {
        this.url =
          this.type == 1
            ? "url1"
            : "url2";
        this.$nextTick(() => {
            this.main.load(params);
        });
      }
    }

這樣子組件就能及時拿到更新后的url了。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM