
Security News
Software Engineering Daily Podcast: Feross on AI, Open Source, and Supply Chain Risk
Socket CEO Feross Aboukhadijeh joins Software Engineering Daily to discuss modern software supply chain attacks and rising AI-driven security risks.
keep-alive-vue2
Advanced tools
Extend vue2 keep-alive and router-view, add the function of automatically judging whether to use the cache.
Extend vue2 keep-alive and router-view, add the function of automatically judging whether to use the cache.
You can use vite-app-pro cli to create template projectďźkeep-alive-vue2 was built in projectďźconvenient experience and useă
Support for vue3 Click here
If the page uses keep-alive and router-view, the advantage is that the operation state of the previous step is quickly restored when the next page operation returns, and this experience is very good.
But it also brings problems.
When the user enters the page from the navigation menu or breadcrumb, a brand new page is needed, but the cached page is actually used, and this result is not what we want.
keep-alive-vue2 solves this problem.
It uses the cache when you operate $router.back and $router.go to return the page by default, and $router.push and $router.replace do not use the cache by default.
npm i keep-alive-vue2
import KeepAliveVue2 from 'keep-alive-vue2';
Vue.use(KeepAliveVue2);
keep-alive-vue2 encapsulates keep-alive and router-view internally,
so you only need to write the keep-alive-vue2 component element.
The cache attribute is used to cache the use of page caching.
<-- Recommend -->
<keep-alive-vue2 :cache="$route.meta.cache" />
<-- Use cache for items with tab manager -->
<keep-alive-vue2
:cache="!$route.meta || !$route.meta.noCache"
:defaultCache="true" />
| property | description | type | option | default |
|---|---|---|---|---|
| cache | whether to cache page | Boolean | true/false | false |
| defaultCache | $router.pushă$router.replace and $router.go(value is greater than 0) parameter cache will use the value | Boolean | true/false | false |
| name | router-view name | String | - | - |
| include | only components with matching names will be cached | RegExp | - | - |
| exclude | any component whose name matches will not be cached | RegExp | - | - |
| max | maximum number of component instances that can be cached | Number | - | - |
The page displayed by the push/replace interface does not use the cache function by default. If you need to use it, configure cache to true Note that defaultCache can change the default cache
// disable cache
this.$router.push({
name: 'list',
});
this.$router.replace({
name: 'list',
});
// use cache
this.$router.push({
name: 'list',
cache: true
});
this.$router.replace({
name: 'list',
cache: true
});
The page displayed by the back/forward/go interface uses the cache function by default. If not use cached page, configure cache to false
// defaut use cache
this.$router.back();
this.$router.forward();
this.$router.go(1);
// disable cache
this.$router.back({cache: false});
this.$router.forward({cache: false});
this.$router.go(1, {cache: false});
| keep-alive-vue2 cache | $router cache | Whether to use cache |
|---|---|---|
| true | true | Yes |
| true | false | Not |
| false | true | Not |
| false | false | Not |
| The page cache takes effect when both cache values are true. None of the others use cached pages. |
FAQs
Extend vue2 keep-alive and router-view, add the function of automatically judging whether to use the cache.
We found that keep-alive-vue2 demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Socket CEO Feross Aboukhadijeh joins Software Engineering Daily to discuss modern software supply chain attacks and rising AI-driven security risks.

Security News
GitHub has revoked npm classic tokens for publishing; maintainers must migrate, but OpenJS warns OIDC trusted publishing still has risky gaps for critical projects.

Security News
Rustâs crates.io team is advancing an RFC to add a Security tab that surfaces RustSec vulnerability and unsoundness advisories directly on crate pages.