當前有個需求:頁面相互跳轉中,在上一個頁面(A頁面)結束時使用$emit給父組件傳值重置某些數據,在下一個頁面(B頁面)加載的時候也會給父組件傳值給數據賦值。
我的做法是在A中使用 beforeDestroy() 在頁面摧毀之前向父頁面發送重置的信號,在B頁面的 created() 方法中給父頁面發送賦值的信號,但是值並沒有達到我想要的樣子。
經過測試A頁面的 beforeDestroy() 方法是在B頁面的 created() 方法之后執行的,所以B頁面傳過去的值修改成功之后又被A頁面的數據重置了。
簡單的寫兩個頁面測試一下之后發現,實際的執行順序是:
B.created() B.beforeMount() A.beforeDestroy() A.destroyed() B.mounted()