调整页面跳转后缓存问题

This commit is contained in:
Ledo 2025-08-20 20:23:56 +08:00
parent ba39a1db06
commit 8cace8d278
37 changed files with 171 additions and 89 deletions

View File

@ -1,6 +1,6 @@
import { pa } from 'element-plus/es/locale'; import { pa } from 'element-plus/es/locale';
import { reactive } from 'vue'; import { reactive } from 'vue';
import type { RouteLocationNormalized } from 'vue-router'; // import type { String } from 'vue-router';
export type QueryParams = { export type QueryParams = {
pageNo: number; pageNo: number;
@ -25,8 +25,8 @@ type CachedParams = {
const DEFAULT_EXPIRE_HOURS = 24; const DEFAULT_EXPIRE_HOURS = 24;
const ROUTE_PARAMS_CACHE_KEY = 'route_params_cache_v2'; // 加个版本号避免冲突 const ROUTE_PARAMS_CACHE_KEY = 'route_params_cache_v2'; // 加个版本号避免冲突
// 生成唯一缓存键(包含路径和查询参数) // 生成唯一缓存键(包含路径和查询参数)
const getCacheKey = (route: RouteLocationNormalized) => { const getCacheKey = (route: String) => {
return `${route.path}?${JSON.stringify(route.query)}`; return route;
}; };
// 初始化缓存(从 sessionStorage 加载) // 初始化缓存(从 sessionStorage 加载)
const saveCache = (cache: Map<string, CachedParams>) => { const saveCache = (cache: Map<string, CachedParams>) => {
@ -39,11 +39,11 @@ const saveCache = (cache: Map<string, CachedParams>) => {
}, },
]) ])
); );
localStorage.setItem(ROUTE_PARAMS_CACHE_KEY, JSON.stringify(serializable)); sessionStorage.setItem(ROUTE_PARAMS_CACHE_KEY, JSON.stringify(serializable));
}; };
const initCache = (): Map<string, CachedParams> => { const initCache = (): Map<string, CachedParams> => {
const cached = localStorage.getItem(ROUTE_PARAMS_CACHE_KEY); const cached = sessionStorage.getItem(ROUTE_PARAMS_CACHE_KEY);
if (!cached) return new Map(); if (!cached) return new Map();
try { try {
@ -66,8 +66,7 @@ const initCache = (): Map<string, CachedParams> => {
const routeParamsCache = { const routeParamsCache = {
cache: initCache(), cache: initCache(),
set(route: RouteLocationNormalized, params: QueryParams) { set(route: String, params: QueryParams) {
console.log('调用了')
const path = getCacheKey(route); // 使用路由对象生成唯一键 const path = getCacheKey(route); // 使用路由对象生成唯一键
const cachedParams: CachedParams = { const cachedParams: CachedParams = {
queryParams: JSON.parse(JSON.stringify(params)), queryParams: JSON.parse(JSON.stringify(params)),
@ -77,7 +76,8 @@ const routeParamsCache = {
saveCache(this.cache); saveCache(this.cache);
}, },
get(route: RouteLocationNormalized) { get(route: String) {
console.log(route)
const path = getCacheKey(route); const path = getCacheKey(route);
return this.cache.get(path)?.queryParams; // 简化返回 return this.cache.get(path)?.queryParams; // 简化返回
}, },

View File

@ -263,8 +263,10 @@ const handleExport = async () => {
/** 初始化 **/ /** 初始化 **/
const route = useRoute() const route = useRoute()
const routeValue = ref('')
onMounted(async () => { onMounted(async () => {
let params = routeParamsCache.get(route.path); let params = routeParamsCache.get(route.path);
routeValue.value = route.path
if (params ) { if (params ) {
Object.assign(queryParams, params); Object.assign(queryParams, params);
} }
@ -272,11 +274,11 @@ onMounted(async () => {
}) })
onBeforeUnmount(() => { onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
window.addEventListener('beforeunload', () => { window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
</script> </script>

View File

@ -350,8 +350,10 @@ const getOrderProperty = (property) => {
/** 初始化 **/ /** 初始化 **/
const route = useRoute() const route = useRoute()
const routeValue = ref('')
onMounted(async () => { onMounted(async () => {
let params = routeParamsCache.get(route.path); let params = routeParamsCache.get(route.path);
routeValue.value = route.path
if (params ) { if (params ) {
Object.assign(queryParams, params); Object.assign(queryParams, params);
} }
@ -359,11 +361,11 @@ onMounted(async () => {
}) })
onBeforeUnmount(() => { onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
window.addEventListener('beforeunload', () => { window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
</script> </script>

View File

@ -200,8 +200,10 @@ const handleDelete = async (id: number) => {
/** 初始化 **/ /** 初始化 **/
const route = useRoute() const route = useRoute()
const routeValue = ref('')
onMounted(async () => { onMounted(async () => {
let params = routeParamsCache.get(route.path); let params = routeParamsCache.get(route.path);
routeValue.value = route.path
if (params ) { if (params ) {
Object.assign(queryParams, params); Object.assign(queryParams, params);
} }
@ -209,11 +211,11 @@ onMounted(async () => {
}) })
onBeforeUnmount(() => { onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
window.addEventListener('beforeunload', () => { window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
</script> </script>

View File

@ -159,8 +159,10 @@ const openDetail = (type: string, id?: number) => {
/** 初始化 **/ /** 初始化 **/
const route = useRoute() const route = useRoute()
const routeValue = ref('')
onMounted(async () => { onMounted(async () => {
let params = routeParamsCache.get(route.path); let params = routeParamsCache.get(route.path);
routeValue.value = route.path
if (params ) { if (params ) {
Object.assign(queryParams, params); Object.assign(queryParams, params);
} }
@ -168,11 +170,11 @@ onMounted(async () => {
}) })
onBeforeUnmount(() => { onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
window.addEventListener('beforeunload', () => { window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
</script> </script>

View File

@ -7,11 +7,13 @@
<!-- 搜索工作栏 --> <!-- 搜索工作栏 -->
<el-form class="-mb-15px" :model="queryParams" ref="queryFormRef" :inline="true" label-width="130px"> <el-form class="-mb-15px" :model="queryParams" ref="queryFormRef" :inline="true" label-width="130px">
<el-form-item label="需求计划单号" prop="projectMaterialPlanNo"> <el-form-item label="需求计划单号" prop="projectMaterialPlanNo">
<el-input v-model="queryParams.projectMaterialPlanNo" placeholder="物料计划单号" clearable @keyup.enter="handleQuery" <el-input
v-model="queryParams.projectMaterialPlanNo" placeholder="物料计划单号" clearable @keyup.enter="handleQuery"
class="!w-240px" /> class="!w-240px" />
</el-form-item> </el-form-item>
<el-form-item label="项目名称" prop="projectName"> <el-form-item label="项目名称" prop="projectName">
<el-input v-model="queryParams.projectName" placeholder="项目名称" clearable @keyup.enter="handleQuery" <el-input
v-model="queryParams.projectName" placeholder="项目名称" clearable @keyup.enter="handleQuery"
class="!w-240px" /> class="!w-240px" />
</el-form-item> </el-form-item>
<el-form-item label="子项目名称" prop="projectSubName"> <el-form-item label="子项目名称" prop="projectSubName">
@ -69,7 +71,8 @@
</el-table-column> </el-table-column>
</el-table> </el-table>
<!-- 分页 --> <!-- 分页 -->
<Pagination :total="total" v-model:page="queryParams.pageNo" v-model:limit="queryParams.pageSize" <Pagination
:total="total" v-model:page="queryParams.pageNo" v-model:limit="queryParams.pageSize"
@pagination="getList" /> @pagination="getList" />
</ContentWrap> </ContentWrap>
@ -174,8 +177,10 @@ const handleDelete = async (id: number) => {
const userInit = ref() const userInit = ref()
/** 初始化 **/ /** 初始化 **/
const route = useRoute() const route = useRoute()
const routeValue = ref('')
onMounted(async () => { onMounted(async () => {
let params = routeParamsCache.get(route.path); let params = routeParamsCache.get(route.path);
routeValue.value = route.path
if (params ) { if (params ) {
Object.assign(queryParams, params); Object.assign(queryParams, params);
} }
@ -185,11 +190,11 @@ onMounted(async () => {
}) })
onBeforeUnmount(() => { onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
window.addEventListener('beforeunload', () => { window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
</script> </script>

View File

@ -7,11 +7,13 @@
<!-- 搜索工作栏 --> <!-- 搜索工作栏 -->
<el-form class="-mb-15px" :model="queryParams" ref="queryFormRef" :inline="true" label-width="130px"> <el-form class="-mb-15px" :model="queryParams" ref="queryFormRef" :inline="true" label-width="130px">
<el-form-item label="需求计划单号" prop="projectMaterialPlanNo"> <el-form-item label="需求计划单号" prop="projectMaterialPlanNo">
<el-input v-model="queryParams.projectMaterialPlanNo" placeholder="物料计划单号" clearable @keyup.enter="handleQuery" <el-input
v-model="queryParams.projectMaterialPlanNo" placeholder="物料计划单号" clearable @keyup.enter="handleQuery"
class="!w-240px" /> class="!w-240px" />
</el-form-item> </el-form-item>
<el-form-item label="项目名称" prop="projectName"> <el-form-item label="项目名称" prop="projectName">
<el-input v-model="queryParams.projectName" placeholder="项目名称" clearable @keyup.enter="handleQuery" <el-input
v-model="queryParams.projectName" placeholder="项目名称" clearable @keyup.enter="handleQuery"
class="!w-240px" /> class="!w-240px" />
</el-form-item> </el-form-item>
<el-form-item label="子项目名称" prop="projectSubName"> <el-form-item label="子项目名称" prop="projectSubName">
@ -72,7 +74,8 @@
</el-table-column> </el-table-column>
</el-table> </el-table>
<!-- 分页 --> <!-- 分页 -->
<Pagination :total="total" v-model:page="queryParams.pageNo" v-model:limit="queryParams.pageSize" <Pagination
:total="total" v-model:page="queryParams.pageNo" v-model:limit="queryParams.pageSize"
@pagination="getList" /> @pagination="getList" />
</ContentWrap> </ContentWrap>
@ -179,8 +182,10 @@ const handleDelete = async (id: number) => {
const userInit = ref() const userInit = ref()
/** 初始化 **/ /** 初始化 **/
const route = useRoute() const route = useRoute()
const routeValue = ref('')
onMounted(async () => { onMounted(async () => {
let params = routeParamsCache.get(route.path); let params = routeParamsCache.get(route.path);
routeValue.value = route.path
if (params ) { if (params ) {
Object.assign(queryParams, params); Object.assign(queryParams, params);
} }
@ -190,11 +195,11 @@ onMounted(async () => {
}) })
onBeforeUnmount(() => { onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
window.addEventListener('beforeunload', () => { window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
</script> </script>

View File

@ -192,8 +192,10 @@ const handleExport = async () => {
/** 初始化 **/ /** 初始化 **/
const route = useRoute() const route = useRoute()
const routeValue = ref('')
onMounted(async () => { onMounted(async () => {
let params = routeParamsCache.get(route.path); let params = routeParamsCache.get(route.path);
routeValue.value = route.path
if (params ) { if (params ) {
Object.assign(queryParams, params); Object.assign(queryParams, params);
} }
@ -201,11 +203,11 @@ onMounted(async () => {
}) })
onBeforeUnmount(() => { onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
window.addEventListener('beforeunload', () => { window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
</script> </script>

View File

@ -239,8 +239,10 @@ const handleExport = async () => {
/** 初始化 **/ /** 初始化 **/
const route = useRoute() const route = useRoute()
const routeValue = ref('')
onMounted(async () => { onMounted(async () => {
let params = routeParamsCache.get(route.path); let params = routeParamsCache.get(route.path);
routeValue.value = route.path
if (params ) { if (params ) {
Object.assign(queryParams, params); Object.assign(queryParams, params);
} }
@ -248,11 +250,11 @@ onMounted(async () => {
}) })
onBeforeUnmount(() => { onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
window.addEventListener('beforeunload', () => { window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
</script> </script>

View File

@ -305,23 +305,27 @@ const userInit = ref()
const route = useRoute() const route = useRoute()
const routeValue = ref('')
onMounted(async () => { onMounted(async () => {
userInit.value = await UserApi.getSimpleUserList() userInit.value = await UserApi.getSimpleUserList()
let params = routeParamsCache.get(route.path); let params = routeParamsCache.get(route.path);
routeValue.value = route.path
if (params ) { if (params ) {
Object.assign(queryParams, params); Object.assign(queryParams, params);
} }
routeValue.value = route.path
await getList() await getList()
}); });
onBeforeUnmount(() => { onBeforeUnmount(() => {
console.log(route.path)
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
window.addEventListener('beforeunload', () => { window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
</script> </script>
<style scoped> <style scoped>

View File

@ -179,8 +179,10 @@ const handleExport = async () => {
/** 初始化 **/ /** 初始化 **/
const route = useRoute() const route = useRoute()
const routeValue = ref('')
onMounted(async () => { onMounted(async () => {
let params = routeParamsCache.get(route.path); let params = routeParamsCache.get(route.path);
routeValue.value = route.path
if (params ) { if (params ) {
Object.assign(queryParams, params); Object.assign(queryParams, params);
} }
@ -192,11 +194,11 @@ onMounted(async () => {
}) })
onBeforeUnmount(() => { onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
window.addEventListener('beforeunload', () => { window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
</script> </script>

View File

@ -249,8 +249,10 @@ const handleExport = async () => {
/** 初始化 **/ /** 初始化 **/
const route = useRoute() const route = useRoute()
const routeValue = ref('')
onMounted(async () => { onMounted(async () => {
let params = routeParamsCache.get(route.path); let params = routeParamsCache.get(route.path);
routeValue.value = route.path
if (params ) { if (params ) {
Object.assign(queryParams, params); Object.assign(queryParams, params);
} }
@ -258,11 +260,11 @@ onMounted(async () => {
}) })
onBeforeUnmount(() => { onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
window.addEventListener('beforeunload', () => { window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
</script> </script>

View File

@ -299,8 +299,10 @@ const handleExport = async () => {
/** 初始化 **/ /** 初始化 **/
const route = useRoute() const route = useRoute()
const routeValue = ref('')
onMounted(async () => { onMounted(async () => {
let params = routeParamsCache.get(route.path); let params = routeParamsCache.get(route.path);
routeValue.value = route.path
if (params ) { if (params ) {
Object.assign(queryParams, params); Object.assign(queryParams, params);
} }
@ -308,11 +310,11 @@ onMounted(async () => {
}) })
onBeforeUnmount(() => { onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
window.addEventListener('beforeunload', () => { window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
</script> </script>

View File

@ -245,8 +245,10 @@ const openPlanTaskDetail = async (code) => {
} }
/** 初始化 **/ /** 初始化 **/
const route = useRoute() const route = useRoute()
const routeValue = ref('')
onMounted(async () => { onMounted(async () => {
let params = routeParamsCache.get(route.path); let params = routeParamsCache.get(route.path);
routeValue.value = route.path
if (params ) { if (params ) {
Object.assign(queryParams, params); Object.assign(queryParams, params);
} }
@ -254,12 +256,12 @@ onMounted(async () => {
}) })
onBeforeUnmount(() => { onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
window.addEventListener('beforeunload', () => { window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
</script> </script>
<style > <style >

View File

@ -201,8 +201,10 @@ const openDetail = (type: string, id?: number) => {
/** 初始化 **/ /** 初始化 **/
const route = useRoute() const route = useRoute()
const routeValue = ref('')
onMounted(async () => { onMounted(async () => {
let params = routeParamsCache.get(route.path); let params = routeParamsCache.get(route.path);
routeValue.value = route.path
if (params ) { if (params ) {
Object.assign(queryParams, params); Object.assign(queryParams, params);
} }
@ -210,11 +212,11 @@ onMounted(async () => {
}) })
onBeforeUnmount(() => { onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
window.addEventListener('beforeunload', () => { window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
</script> </script>

View File

@ -292,8 +292,10 @@ const handleExport = async () => {
/** 初始化 **/ /** 初始化 **/
const route = useRoute() const route = useRoute()
const routeValue = ref('')
onMounted(async () => { onMounted(async () => {
let params = routeParamsCache.get(route.path); let params = routeParamsCache.get(route.path);
routeValue.value = route.path
if (params ) { if (params ) {
Object.assign(queryParams, params); Object.assign(queryParams, params);
} }
@ -301,11 +303,11 @@ onMounted(async () => {
}) })
onBeforeUnmount(() => { onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
window.addEventListener('beforeunload', () => { window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
</script> </script>

View File

@ -292,8 +292,10 @@ const handleExport = async () => {
/** 初始化 **/ /** 初始化 **/
const route = useRoute() const route = useRoute()
const routeValue = ref('')
onMounted(async () => { onMounted(async () => {
let params = routeParamsCache.get(route.path); let params = routeParamsCache.get(route.path);
routeValue.value = route.path
if (params ) { if (params ) {
Object.assign(queryParams, params); Object.assign(queryParams, params);
} }
@ -301,11 +303,11 @@ onMounted(async () => {
}) })
onBeforeUnmount(() => { onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
window.addEventListener('beforeunload', () => { window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
</script> </script>

View File

@ -246,8 +246,10 @@ const handleExport = async () => {
/** 初始化 **/ /** 初始化 **/
const route = useRoute() const route = useRoute()
const routeValue = ref('')
onMounted(async () => { onMounted(async () => {
let params = routeParamsCache.get(route.path); let params = routeParamsCache.get(route.path);
routeValue.value = route.path
if (params ) { if (params ) {
Object.assign(queryParams, params); Object.assign(queryParams, params);
} }
@ -255,11 +257,11 @@ onMounted(async () => {
}) })
onBeforeUnmount(() => { onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
window.addEventListener('beforeunload', () => { window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
</script> </script>

View File

@ -373,8 +373,10 @@ const handleCommand = async (command, id) => {
/** 初始化 **/ /** 初始化 **/
const route = useRoute() const route = useRoute()
const routeValue = ref('')
onMounted(async () => { onMounted(async () => {
let params = routeParamsCache.get(route.path); let params = routeParamsCache.get(route.path);
routeValue.value = route.path
if (params ) { if (params ) {
Object.assign(queryParams, params); Object.assign(queryParams, params);
} }
@ -385,12 +387,12 @@ onActivated(() => {
}) })
onBeforeUnmount(() => { onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
window.addEventListener('beforeunload', () => { window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
</script> </script>

View File

@ -338,8 +338,10 @@ const handleExport = async () => {
/** 初始化 **/ /** 初始化 **/
const route = useRoute() const route = useRoute()
const routeValue = ref('')
onMounted(async () => { onMounted(async () => {
let params = routeParamsCache.get(route.path); let params = routeParamsCache.get(route.path);
routeValue.value = route.path
if (params ) { if (params ) {
Object.assign(queryParams, params); Object.assign(queryParams, params);
} }
@ -350,12 +352,12 @@ onActivated(() => {
}) })
onBeforeUnmount(() => { onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
window.addEventListener('beforeunload', () => { window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
</script> </script>

View File

@ -374,8 +374,10 @@ const handleCommand = async (command, id) => {
/** 初始化 **/ /** 初始化 **/
const route = useRoute() const route = useRoute()
const routeValue = ref('')
onMounted(async () => { onMounted(async () => {
let params = routeParamsCache.get(route.path); let params = routeParamsCache.get(route.path);
routeValue.value = route.path
if (params ) { if (params ) {
Object.assign(queryParams, params); Object.assign(queryParams, params);
} }
@ -386,12 +388,12 @@ onActivated(() => {
}) })
onBeforeUnmount(() => { onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
window.addEventListener('beforeunload', () => { window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
</script> </script>

View File

@ -436,8 +436,10 @@ const printHandle = (id,property) => {
/** 初始化 **/ /** 初始化 **/
const route = useRoute() const route = useRoute()
const routeValue = ref('')
onMounted(async () => { onMounted(async () => {
let params = routeParamsCache.get(route.path); let params = routeParamsCache.get(route.path);
routeValue.value = route.path
if (params ) { if (params ) {
Object.assign(queryParams, params); Object.assign(queryParams, params);
} }
@ -448,12 +450,12 @@ onActivated(() => {
}) })
onBeforeUnmount(() => { onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
window.addEventListener('beforeunload', () => { window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
</script> </script>

View File

@ -251,9 +251,11 @@ const setDefaultDate = () => {
} }
/** 初始化 **/ /** 初始化 **/
const route = useRoute() const route = useRoute()
const routeValue = ref('')
onMounted(async () => { onMounted(async () => {
setDefaultDate() setDefaultDate()
let params = routeParamsCache.get(route.path); let params = routeParamsCache.get(route.path);
routeValue.value = route.path
if (params ) { if (params ) {
Object.assign(queryParams, params); Object.assign(queryParams, params);
} }
@ -261,11 +263,11 @@ onMounted(async () => {
}) })
onBeforeUnmount(() => { onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
window.addEventListener('beforeunload', () => { window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
</script> </script>

View File

@ -438,9 +438,11 @@ const setDefaultDate = () => {
} }
/** 初始化 **/ /** 初始化 **/
const route = useRoute() const route = useRoute()
const routeValue = ref('')
onMounted(async () => { onMounted(async () => {
setDefaultDate() setDefaultDate()
let params = routeParamsCache.get(route.path); let params = routeParamsCache.get(route.path);
routeValue.value = route.path
if (params ) { if (params ) {
Object.assign(queryParams, params); Object.assign(queryParams, params);
} }
@ -450,12 +452,12 @@ onMounted(async () => {
}) })
onBeforeUnmount(() => { onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
window.addEventListener('beforeunload', () => { window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
const rowPrintLoading = reactive({}) const rowPrintLoading = reactive({})

View File

@ -284,8 +284,10 @@ const handleExportWithTax = async () => {
} }
/** 初始化 **/ /** 初始化 **/
const route = useRoute() const route = useRoute()
const routeValue = ref('')
onMounted(async () => { onMounted(async () => {
let params = routeParamsCache.get(route.path); let params = routeParamsCache.get(route.path);
routeValue.value = route.path
if (params ) { if (params ) {
Object.assign(queryParams, params); Object.assign(queryParams, params);
} }
@ -293,11 +295,11 @@ onMounted(async () => {
}) })
onBeforeUnmount(() => { onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
window.addEventListener('beforeunload', () => { window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
</script> </script>

View File

@ -262,8 +262,10 @@ const handleExportWithTax = async () => {
} }
/** 初始化 **/ /** 初始化 **/
const route = useRoute(); const route = useRoute();
const routeValue = ref('')
onMounted(async () => { onMounted(async () => {
let params = routeParamsCache.get(route.path); let params = routeParamsCache.get(route.path);
routeValue.value = route.path
if (params ) { if (params ) {
Object.assign(queryParams, params); Object.assign(queryParams, params);
} }
@ -275,11 +277,11 @@ const flushParam = route.query.flush;
}) })
onBeforeUnmount(() => { onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
window.addEventListener('beforeunload', () => { window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
</script> </script>

View File

@ -219,8 +219,10 @@ const openDetail = (type: string, id?: number) => {
/** 初始化 **/ /** 初始化 **/
const route = useRoute() const route = useRoute()
const routeValue = ref('')
onMounted(async () => { onMounted(async () => {
let params = routeParamsCache.get(route.path); let params = routeParamsCache.get(route.path);
routeValue.value = route.path
if (params ) { if (params ) {
Object.assign(queryParams, params); Object.assign(queryParams, params);
} }
@ -228,11 +230,11 @@ onMounted(async () => {
}) })
onBeforeUnmount(() => { onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
window.addEventListener('beforeunload', () => { window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
</script> </script>

View File

@ -197,8 +197,10 @@ const handleExport = async () => {
/** 初始化 **/ /** 初始化 **/
const route = useRoute() const route = useRoute()
const routeValue = ref('')
onMounted(async () => { onMounted(async () => {
let params = routeParamsCache.get(route.path); let params = routeParamsCache.get(route.path);
routeValue.value = route.path
if (params ) { if (params ) {
Object.assign(queryParams, params); Object.assign(queryParams, params);
} }
@ -208,11 +210,11 @@ onMounted(async () => {
}) })
onBeforeUnmount(() => { onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
window.addEventListener('beforeunload', () => { window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
</script> </script>

View File

@ -280,8 +280,10 @@ const openDetail = (active: string, id?: number) => {
/** 初始化 **/ /** 初始化 **/
const route = useRoute() const route = useRoute()
const routeValue = ref('')
onMounted(async () => { onMounted(async () => {
let params = routeParamsCache.get(route.path); let params = routeParamsCache.get(route.path);
routeValue.value = route.path
if (params ) { if (params ) {
Object.assign(queryParams, params); Object.assign(queryParams, params);
} }
@ -304,12 +306,12 @@ onMounted(async () => {
}) })
onBeforeUnmount(() => { onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
window.addEventListener('beforeunload', () => { window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
onActivated(() => { onActivated(() => {
getList() getList()

View File

@ -285,8 +285,10 @@ const openDetail = (active: string, id?: number) => {
/** 初始化 **/ /** 初始化 **/
const route = useRoute() const route = useRoute()
const routeValue = ref('')
onMounted(async () => { onMounted(async () => {
let params = routeParamsCache.get(route.path); let params = routeParamsCache.get(route.path);
routeValue.value = route.path
if (params ) { if (params ) {
Object.assign(queryParams, params); Object.assign(queryParams, params);
} }
@ -312,11 +314,11 @@ onActivated(() => {
}) })
onBeforeUnmount(() => { onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
window.addEventListener('beforeunload', () => { window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
</script> </script>

View File

@ -286,8 +286,10 @@ const openDetail = (active: string, id?: number) => {
/** 初始化 **/ /** 初始化 **/
const route = useRoute() const route = useRoute()
const routeValue = ref('')
onMounted(async () => { onMounted(async () => {
let params = routeParamsCache.get(route.path); let params = routeParamsCache.get(route.path);
routeValue.value = route.path
if (params ) { if (params ) {
Object.assign(queryParams, params); Object.assign(queryParams, params);
} }
@ -313,11 +315,11 @@ onActivated(() => {
}) })
onBeforeUnmount(() => { onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
window.addEventListener('beforeunload', () => { window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
</script> </script>

View File

@ -225,8 +225,10 @@ const handleExport = async () => {
/** 初始化 **/ /** 初始化 **/
const route = useRoute() const route = useRoute()
const routeValue = ref('')
onMounted(async () => { onMounted(async () => {
let params = routeParamsCache.get(route.path); let params = routeParamsCache.get(route.path);
routeValue.value = route.path
if (params ) { if (params ) {
Object.assign(queryParams, params); Object.assign(queryParams, params);
} }
@ -235,11 +237,11 @@ onMounted(async () => {
}) })
onBeforeUnmount(() => { onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
window.addEventListener('beforeunload', () => { window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
</script> </script>

View File

@ -182,8 +182,10 @@ const openForm = (type: string, id?: number) => {
} }
/** 初始化 **/ /** 初始化 **/
const route = useRoute() const route = useRoute()
const routeValue = ref('')
onMounted(async () => { onMounted(async () => {
let params = routeParamsCache.get(route.path); let params = routeParamsCache.get(route.path);
routeValue.value = route.path
if (params ) { if (params ) {
Object.assign(queryParams, params); Object.assign(queryParams, params);
} }
@ -191,11 +193,11 @@ onMounted(async () => {
}) })
onBeforeUnmount(() => { onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
window.addEventListener('beforeunload', () => { window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
</script> </script>

View File

@ -210,8 +210,10 @@ const init_page_pn = (async ()=>{
/** 初始化 **/ /** 初始化 **/
const route = useRoute() const route = useRoute()
const routeValue = ref('')
onMounted(async () => { onMounted(async () => {
let params = routeParamsCache.get(route.path); let params = routeParamsCache.get(route.path);
routeValue.value = route.path
if (params ) { if (params ) {
Object.assign(queryParams, params); Object.assign(queryParams, params);
} }
@ -222,11 +224,11 @@ onMounted(async () => {
}) })
onBeforeUnmount(() => { onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
window.addEventListener('beforeunload', () => { window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
</script> </script>

View File

@ -154,8 +154,10 @@ const init_page_wh = (async ()=>{
/** 初始化 **/ /** 初始化 **/
const route = useRoute() const route = useRoute()
const routeValue = ref('')
onMounted(async () => { onMounted(async () => {
let params = routeParamsCache.get(route.path); let params = routeParamsCache.get(route.path);
routeValue.value = route.path
if (params ) { if (params ) {
Object.assign(queryParams, params); Object.assign(queryParams, params);
} }
@ -166,11 +168,11 @@ onMounted(async () => {
}) })
onBeforeUnmount(() => { onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
window.addEventListener('beforeunload', () => { window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
</script> </script>

View File

@ -17,7 +17,8 @@
/> />
</el-form-item> </el-form-item>
<el-form-item label="需求计划单号" prop="projectMaterialPlanNo"> <el-form-item label="需求计划单号" prop="projectMaterialPlanNo">
<el-input v-model="queryParams.projectMaterialPlanNo" placeholder="需求计划单号" clearable @keyup.enter="handleQuery" <el-input
v-model="queryParams.projectMaterialPlanNo" placeholder="需求计划单号" clearable @keyup.enter="handleQuery"
class="!w-240px" /> class="!w-240px" />
</el-form-item> </el-form-item>
<el-form-item label="物料名称" prop="materialName"> <el-form-item label="物料名称" prop="materialName">
@ -73,7 +74,8 @@
</el-table-column> </el-table-column>
</el-table> </el-table>
<!-- 分页 --> <!-- 分页 -->
<Pagination :total="total" v-model:page="queryParams.pageNo" v-model:limit="queryParams.pageSize" <Pagination
:total="total" v-model:page="queryParams.pageNo" v-model:limit="queryParams.pageSize"
@pagination="getList" /> @pagination="getList" />
</ContentWrap> </ContentWrap>
@ -89,7 +91,7 @@ import * as UserApi from '@/api/system/user'
import dayjs from "dayjs"; import dayjs from "dayjs";
import routeParamsCache from '@/utils/routeParamsCache' import routeParamsCache from '@/utils/routeParamsCache'
defineOptions({ name: 'supplementManagement' }) defineOptions({ name: 'SupplementManagement' })
const router = useRouter() const router = useRouter()
const message = useMessage() // const message = useMessage() //
const { t } = useI18n() // const { t } = useI18n() //
@ -187,9 +189,11 @@ const setDefaultDate = () => {
const userInit = ref() const userInit = ref()
/** 初始化 **/ /** 初始化 **/
const route = useRoute() const route = useRoute()
const routeValue = ref('')
onMounted(async () => { onMounted(async () => {
setDefaultDate() setDefaultDate()
let params = routeParamsCache.get(route.path); let params = routeParamsCache.get(route.path);
routeValue.value = route.path
if (params ) { if (params ) {
Object.assign(queryParams, params); Object.assign(queryParams, params);
} }
@ -202,11 +206,11 @@ onActivated(() => {
}) })
onBeforeUnmount(() => { onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
window.addEventListener('beforeunload', () => { window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
</script> </script>

View File

@ -286,8 +286,10 @@ const openDetail = (type: string, id?: number) => {
/** 初始化 **/ /** 初始化 **/
const route = useRoute() const route = useRoute()
const routeValue = ref('')
onMounted(async () => { onMounted(async () => {
let params = routeParamsCache.get(route.path); let params = routeParamsCache.get(route.path);
routeValue.value = route.path
if (params ) { if (params ) {
Object.assign(queryParams, params); Object.assign(queryParams, params);
} }
@ -295,11 +297,11 @@ onMounted(async () => {
}) })
onBeforeUnmount(() => { onBeforeUnmount(() => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
window.addEventListener('beforeunload', () => { window.addEventListener('beforeunload', () => {
const plainParams = JSON.parse(JSON.stringify(queryParams)); const plainParams = JSON.parse(JSON.stringify(queryParams));
routeParamsCache.set(route.path, plainParams); routeParamsCache.set(routeValue.value, plainParams);
}); });
</script> </script>