Vue3:页面A搜索后跳转到页面B,然后从页面B退回页面A重新搜索,但是得到的页面B得刷新一下才会显示正确的数据

问题

Vue3: 从页面A进行搜索后跳转到页面B,然后从页面B退回页面A重新搜索,但是得到的页面B得刷新一下才会显示正确的数据。

  • 读取数据的代码格式大致如下(代码做了一些删减):

解决

  • 会出现上述情况,是因为渲染数据这个步骤没有出现在Vue实例的生命周期中合适的阶段,读取数据并渲染数据的步骤应该放在组件实例已经完全创建后。而上述代码把数据的声明放在了setup函数外,vue3的setup函数相当于vue2中的 beforeCreate 和created函数的结合,因此应该把数据的声明放在setup函数中。

  • 下图是vue2和vue3生命周期钩子函数的一个对比(图源网络):

  • 对于Vue3来说,可以直接使用语法糖,可以避免一些因生命周期函数使用不当而造成的错误,在script标签中加个setup即可

javascript 复制代码
<script setup>
</script>
相关推荐
吴声子夜歌3 天前
Vue3——网络框架Axios的应用
javascript·vue3·axios
赵庆明老师11 天前
vben开发入门6:tsconfig.json
json·vue3·vben
赵庆明老师11 天前
vben开发入门5:vite.config.ts
前端·html·vue3·vben
沙振宇12 天前
【Web】使用Vue3+PlayCanvas开发3D游戏(十二)渲染PCD点云可视化模型
3d·vue3·点云·pcd
是席木木啊15 天前
告别console.log!Vue3项目日志框架选型指南
前端·vue3·日志框架
程序员-南16 天前
解决 Vue3 中 keep-alive 缓存问题的方法
缓存·vue3
qq_120840937117 天前
Three.js 模型加载稳定性实战:从资源失败到可用发布的工程化方案
前端·javascript·vue.js·vue3·three.js
qq_120840937117 天前
Three.js 模型加载与线上稳定性实战:路径、跨域、缓存与降级全链路指南
开发语言·javascript·缓存·vue3
qq_120840937117 天前
Vue3 + Three.js 实战入门:从零搭建可交互3D场景(含模型加载与性能优化)
javascript·3d·vue3·交互
qq_120840937117 天前
Vue3 + Three.js 入门实战:从 0 到 1 搭建可交互的 3D 场景(含模型加载与性能优化)
javascript·3d·vue3·交互·webgl·gltf