事先把遍历后的内容存储到内存中,免得查找其他作者时重新获取数据
This commit is contained in:
parent
0317061c4d
commit
117dd2d233
@ -50,7 +50,7 @@ export const getUserInfo = async () => {
|
|||||||
export const logoutUser = () => { // 不再是 async,因为它不执行异步导航
|
export const logoutUser = () => { // 不再是 async,因为它不执行异步导航
|
||||||
// console.log('jwt.js: logoutUser called. Clearing local storage.');
|
// console.log('jwt.js: logoutUser called. Clearing local storage.');
|
||||||
localStorage.removeItem('access_token');
|
localStorage.removeItem('access_token');
|
||||||
localStorage.removeItem('user_id'); // 如果您也存储了user_id
|
localStorage.removeItem('user_id');
|
||||||
// 导航将由调用者(如路由守卫)处理
|
// 导航将由调用者(如路由守卫)处理
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -182,25 +182,29 @@ const fetchAuthorMaps = async () => {
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
authorName.value = author
|
authorName.value = author
|
||||||
|
const cacheKey = 'allMaps'
|
||||||
// 获取所有地图
|
|
||||||
let allMaps = []
|
let allMaps = []
|
||||||
let page = 1
|
const cached = sessionStorage.getItem(cacheKey)
|
||||||
let hasMore = true
|
if (cached) {
|
||||||
|
allMaps = JSON.parse(cached)
|
||||||
while (hasMore) {
|
} else {
|
||||||
const response = await getMaps({
|
// 获取所有地图
|
||||||
page: page,
|
let page = 1
|
||||||
ordering: '-create_time'
|
let hasMore = true
|
||||||
})
|
while (hasMore) {
|
||||||
|
const response = await getMaps({
|
||||||
if (response.results && response.results.length > 0) {
|
page: page,
|
||||||
allMaps = allMaps.concat(response.results)
|
ordering: '-create_time'
|
||||||
hasMore = !!response.next
|
})
|
||||||
page++
|
if (response.results && response.results.length > 0) {
|
||||||
} else {
|
allMaps = allMaps.concat(response.results)
|
||||||
hasMore = false
|
hasMore = !!response.next
|
||||||
|
page++
|
||||||
|
} else {
|
||||||
|
hasMore = false
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
sessionStorage.setItem(cacheKey, JSON.stringify(allMaps))
|
||||||
}
|
}
|
||||||
// 根据作者名称过滤地图
|
// 根据作者名称过滤地图
|
||||||
authorMaps.value = allMaps.filter(map => map.user === author)
|
authorMaps.value = allMaps.filter(map => map.user === author)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user