相关疑难解决方法(0)

Vue 2 <keep-alive> 不适用于 <router-view> 和 key

我将 vue-router 与一系列组件(如选项卡)一起使用。每个<router-link>都是一个选项卡,下面的空间是<router-view>. 其中两个选项卡是具有不同过滤器的相同组件,假设它们是products并且路由器添加了用于过滤的参数:/products/new& /products/sale

里面products是单独的product组件,当路由打开时它们会被安装。我的问题是,当我在路由之间切换并且更改过滤器参数时,product每次都会重新安装组件。我想缓存它们,以便来回切换更容易。为此,我设置<keep-alive>并添加:key='$route.fullPath'到我的<router-view>但它们似乎没有被缓存。每个product仍烧成mounted()事件,当我之间进行切换products

<keep-alive>
  <router-view :key='$route.fullPath'></router-view>
</keep-alive>
Run Code Online (Sandbox Code Playgroud)

我应该将每个products视图变成一个单独的组件吗?

javascript vue.js vue-router vue-component

7
推荐指数
3
解决办法
1万
查看次数

标签 统计

javascript ×1

vue-component ×1

vue-router ×1

vue.js ×1