【发布时间】:2021-04-13 13:57:11
【问题描述】:
我创建了一个由两个主要组件组成的小应用程序,并且我正在使用 vue 路由器在组件之间进行路由。
第一个组件称为 MoviesList,第二个组件称为 Movie。 我已经在 routes js 文件中注册了它们。
const routes = [
{
path: '/',
name: 'Home',
component: MoviesList
},
{
path: '/:movieId',
name: 'Movie',
component: Movie
}
]
我的 App.vue 模板看起来像这样
<template>
<router-view></router-view>
</template>
如何让 MovieList 组件缓存起来,或者说它是用<keep-alive> 标签包装的?
期望的结果是使 MovieList 组件缓存而 Movie 组件不缓存。
我想这样做是因为 MovieList 组件有一个在mounted() 挂钩上运行的方法,每当我切换路由并返回时,该方法再次运行,因为组件被重新渲染。
【问题讨论】:
标签: javascript vue.js vue-router vuejs3 vue-router4