当前位置: 首页 > news >正文

中国建设银行嵊州市支行网站营销型网站制作成都

中国建设银行嵊州市支行网站,营销型网站制作成都,查询商标是否已注册官网,访问网页的流程keep-alive 是 Vue 的内置组件,当它包裹动态组件时,会缓存不活动的组件实例,而不是销毁它们。 keep-alive 包裹动态组件时,会缓存不活动的组件实例,而不是销毁它们 使用场景 使用原则:当我们在某些场景下…

keep-alive 是 Vue 的内置组件,当它包裹动态组件时,会缓存不活动的组件实例,而不是销毁它们。

keep-alive 包裹动态组件时,会缓存不活动的组件实例,而不是销毁它们

使用场景

使用原则:当我们在某些场景下不需要让页面重新加载时我们可以使用keepalive

例如:

当我们从首页–>列表页–>商详页–>再返回,这时候列表页应该是需要keep-alive

首页–>列表页–>商详页–>返回到列表页(需要缓存)–>返回到首页(需要缓存)–>再次进入列表页(不需要缓存),这时候可以按需来控制页面的keep-alive

使用方式1:结合include和exclude

keep-alive可以设置以下props属性:

  • include - 字符串或正则表达式。只有名称匹配的组件会被缓存
  • exclude - 字符串或正则表达式。任何名称匹配的组件都不会被缓存
  • max - 数字。最多可以缓存多少组件实例

注意: include/exclude 值是组件中的 name 命名,而不是路由中的组件 name 命名

// router.js
{path: '/home',name: 'home',component: () => import('../views/home.vue')
},
{ path: '/test',name: 'test',component: () => import('../views/test.vue')
},
// App.vue
<keep-alive include="test"><router-view/>
</keep-alive>----------------------------------------------------------------------------------------------------------------
补充: include/exclude 值的多种形式。// 1. 将缓存 name 为 test 的组件(基本)
<keep-alive include='test'><router-view/>
</keep-alive>// 2. 将缓存 name 为 a 或者 b 的组件,结合动态组件使用
<keep-alive include='a,b'><router-view/>
</keep-alive>// 3. 使用正则表达式,需使用 v-bind
<keep-alive :include='/a|b/'><router-view/>
</keep-alive>	// 4.动态判断
<keep-alive :include='includedComponents'><router-view/>
</keep-alive>// 5. 将不缓存 name 为 test 的组件
<keep-alive exclude='test'><router-view/>
</keep-alive>// 6. 和 `<transition>` 一起使用
<transition><keep-alive><router-view/></keep-alive>
</transition>// 7. 数组 (使用 `v-bind`)
<keep-alive :include="['a', 'b']"><component :is="view"></component>
</keep-alive>
使用方式2:通过路由中的 meta 属性控制是否需要缓存

将 test 路由中的 meta 添加 keepAlive 属性为 true,表示当前路由组件要进行缓存。

在路由中设置keepAlive属性判断是否需要缓存

// router.js
{path: '/home',name: 'home',component: () => import('../views/home.vue')
},
{ path: '/test',name: 'test',meta:{keepAlive:true},component: () => import('../views/test.vue')
},
<keep-alive><router-view v-if="$route.meta.keepAlive" />
</keep-alive>
<router-view v-if="!$route.meta.keepAlive" />
使用方式3:结合路由守卫来实现

实际开发中,我们可以结合路由守卫来实现需要缓存组件的缓存。

export default {beforeRouteLeave(to, from, next) {to.meta.keepAlive = true;next();}
}
生命周期函数

设置了 keep-alive 缓存的组件,会多出两个生命周期钩子(activateddeactivated):

  • 首次进入组件时:beforeRouteEnter > beforeCreate > created> mounted > activated > … … > beforeRouteLeave > deactivated
  • 再次进入组件时:beforeRouteEnter >activated > … … > beforeRouteLeave > deactivated
http://www.yidumall.com/news/96264.html

相关文章:

  • 聊城做网站费用模板网站建设开发
  • 企业邮箱注册域名武汉seo服务
  • 做网站效果上海关键词seo
  • 餐饮手机微网站怎么做优化游戏卡顿的软件
  • 淘宝上做网站免费网站提交入口
  • 商城建站系统多少钱seo百度发包工具
  • 惠州网站建设 骏域网站建设外包seo服务口碑好
  • 佛山最好的网站建设精准营销的案例
  • 什么项目必须走辽宁建设工程信息网广州网站优化步骤
  • 杭州响应式网站谷歌外贸网站推广
  • 东莞市住房和城乡建设局网seo怎么优化软件
  • 竞价网站同时做优化可以吗每日财经最新消息
  • 哪个网站可以做一对一老师怎么自己制作一个网站
  • 常州网站建设最易软文写作是什么
  • 广州化妆品网站建设公司友情链接seo
  • 个人网站建设论文绪论百度网站打开
  • 深圳市龙岗区做网站的公司开鲁网站seo免费版
  • 长沙做企业网站的公司手机优化大师官方免费下载
  • 商城开发网站建设百度seo查询系统
  • 沈阳网站制作列表网seo关键词推广公司
  • 网站建设合同制百度网址入口
  • wix做的网站能扒下来新媒体营销策略有哪些
  • 网站建设从建立服务器开始网站设计师
  • 文本编辑器做网站搜多多搜索引擎入口
  • php网站开发实例教程实验报告什么是关键词广告
  • 郑州汉狮公司做网站查看域名每日ip访问量
  • wordpress站点临时关闭最新收录查询
  • 花钱做网站注意什么百度推广关键词排名规则
  • 宁海县建设局网站下属单位代发qq群发广告推广
  • 无忧网络网站建设数据推广公司