vue3中页面返回时刷新首页的处理方案

onDeactivated离开时 触发的,不是回来时!应该用 onActivated

正确 Demo

ts 复制代码
// ✅ 列表页 index.vue
import { onActivated } from 'vue'

// 每次从其他页切回时自动刷新列表
onActivated(() => {
  getList()
})
ts 复制代码
// 新增页 add.vue - 保存成功
function handleSave() {
  addGroup(addForm).then(() => {
    ElMessage.success('Create successfully')
    router.back()
    tagsViewStore.delView(route)  // 关闭新增页标签,回到列表页触发 onActivated
  })
}

如果需要精确控制(仅从特定页返回才刷新)

ts 复制代码
// 用路由守卫拿到 from,存到变量里
let isFromAdd = false

router.beforeEach((to, from) => {
  isFromAdd = from.path === '/ae/groupSetup/add'
})

onActivated(() => {
  if (isFromAdd) {
    getList()
    isFromAdd = false  // 重置标记
  }
})

总结

操作 正确 错误
获取来源路由 router.beforeEach((to, from) => ...) useRoute().from
返回时刷新 onActivated onDeactivated
简单场景 直接用 onActivated(() => getList()) 不需要条件判断
相关推荐
whyfail4 小时前
前端学 Spring Boot(8):接口为什么越用越慢?
前端·spring boot·后端
麻瓜老宋4 小时前
AI开发C语言应用按步走,表达式计算器calc的第二十三步,多行输入、进制输出、错误恢复、常量折叠、配置加载等
c语言·开发语言·atomcode
用户059540174465 小时前
LangChain 记忆测试踩坑实录:这两个坑让我排查了 4 小时
前端·css
程序员黑豆5 小时前
鸿蒙应用开发:@Monitor 装饰器使用教程
前端·harmonyos
用户938515635075 小时前
从零构建《天龙八部》知识库:EPUB 加载→文本分割→向量嵌入→Milvus 存储→RAG 问答,一条链路打通
javascript·人工智能·全栈
q567315235 小时前
企业级 HTTP 代理采购选型:技术评估清单 15 项
开发语言·网络·爬虫·网络协议·http·隧道ip·代理ip
SamChan905 小时前
在Web应用中集成PDF多语言翻译功能:PDFTranslator API实战指南
前端·python·ai·pdf·yapi·机器翻译
天天进步20155 小时前
Python全栈项目--智能办公自动化系统
开发语言·python
kyriewen5 小时前
AI Agent 9秒删光了生产数据库——我给自己的项目做了5个紧急检查
前端·ai编程·claude
IT_陈寒6 小时前
JavaScript的this又双叒叕让我怀疑人生了
前端·人工智能·后端