vue3中addRoute路由變化頁面未刷新問題解決
路由變化了但頁面沒有更新
按著vue2的寫法寫vue3 發(fā)現(xiàn)路由變化了但頁面沒有更新
搜索了半天沒有解決辦法。
想了半天覺得是重復(fù)用同一個對象,vue為了節(jié)約性能就沒有新建, 被vue3給優(yōu)化了
解決辦法,每次addRoute時 深復(fù)制組件對象
import time from "../views/time"
function copyObj(obj) {
if (typeof obj == "object") {
if (Array.isArray(obj)) {
let arr = [];
for (let item of obj) {
arr.push(Object.assign(copyObj(item)));
}
return arr;
} else if (obj == null) {
return null;
} else {
let obj1 = {};
for (let index in obj) {
obj1[index] = copyObj((obj[index]));
}
return obj1;
}
} else if (typeof obj == "function") {
return Object.assign(obj);
} else if (typeof obj == undefined) {
return undefined;
} else {
return obj;
}
}
window.pushTime = function () {
let t = new Date().getTime();
let path = `/time/${t}`;
time = copyObj(time)
this.$router.addRoute({
path,
name: path,
component: time,
});
this.$router.push({
path,
});
}以上就是vue3中addRoute路由變化但頁面未更新問題解決的詳細內(nèi)容,更多關(guān)于vue3 addRoute頁面刷新的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Vue數(shù)據(jù)驅(qū)動試圖的實現(xiàn)方法及原理
當(dāng)Vue實例中的數(shù)據(jù)(data)發(fā)生變化時,與之相關(guān)聯(lián)的視圖(template)會自動更新,反映出最新的數(shù)據(jù)狀態(tài), Vue的數(shù)據(jù)驅(qū)動視圖是通過其響應(yīng)式系統(tǒng)實現(xiàn)的,以下是Vue數(shù)據(jù)驅(qū)動視圖實現(xiàn)的核心原理,需要的朋友可以參考下2024-10-10
vue、react等單頁面項目應(yīng)該這樣子部署到服務(wù)器
這篇文章主要介紹了vue、react等單頁面項目應(yīng)該這樣子部署到服務(wù)器,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-01-01
vue之el-tree懶加載數(shù)據(jù)并且實現(xiàn)樹的過濾問題
這篇文章主要介紹了vue之el-tree懶加載數(shù)據(jù)并且實現(xiàn)樹的過濾問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-04-04
vue項目登錄頁面實現(xiàn)記住用戶名和密碼的示例代碼
本文主要介紹了vue項目登錄頁面實現(xiàn)記住用戶名和密碼的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-07-07

