热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

vue动态切换组件component以及keepalive的运用

动态切换组件用<component:iscomponentName><component>componentName是组件名称案例代码:<temp

动态切换组件用 

componentName是组件名称

案例代码:





keep-alive是一个抽象组件:它自身不会渲染一个DOM元素,也不会出现在父组件链中;使用keep-alive包裹动态组件时,会缓存不活动的组件实例,而不是销毁它们。

用户在某个列表页面选择筛选条件过滤出一份数据列表,由列表页面进入数据详情页面,再返回该列表页面,我们希望:列表页面可以保留用户的筛选(或选中)状态。
keep-alive就是用来解决这种场景。当然keep-alive不仅仅是能够保存页面/组件的状态这么简单,它还可以避免组件反复创建和渲染,有效提升系统性能。总的来说,keep-alive用于保存组件的渲染状态。

keep-alive用法

  • 在动态组件中的应用

     

在vue-router中的应用


    

include定义缓存白名单指定哪些需要缓存,keep-alive会缓存命中的组件;exclude定义缓存黑名单指定哪些组件不需要缓存,include和exclude只能用一个 ,被命中的组件将不会被缓存;max定义缓存组件上限,超出上限使用LRU的策略置换缓存数据。注意那两个参数是 是注册名称

 那么这里是include是Left888了 不是left了

案例:

注意组件假如被 keppkeep-alive 包裹了 会执行这两个生命周期 activated,deactivated

这里 left组件会执行  right组件不会执行这两个生命周期

left组件按钮点击数字会自增 到时切换回去 还是自增的数字依然保留 比如数字自增到10  切换回去还是10  而Right切换回去失踪为0 代码如下

Left代码





Right代码





APP.vue父组件






推荐阅读
  • 单页面应用 VS 多页面应用的区别和适用场景
    本文主要介绍了单页面应用(SPA)和多页面应用(MPA)的区别和适用场景。单页面应用只有一个主页面,所有内容都包含在主页面中,页面切换快但需要做相关的调优;多页面应用有多个独立的页面,每个页面都要加载相关资源,页面切换慢但适用于对SEO要求较高的应用。文章还提到了两者在资源加载、过渡动画、路由模式和数据传递方面的差异。 ... [详细]
  • 本文讨论了将HashRouter改为Router后,页面全部变为空白页且没有报错的问题。作者提到了在实际部署中需要在服务端进行配置以避免刷新404的问题,并分享了route/index.js中hash模式的配置。文章还提到了在vueJs项目中遇到过类似的问题。 ... [详细]
  • Vue基础一、什么是Vue1.1概念Vue(读音vjuː,类似于view)是一套用于构建用户界面的渐进式JavaScript框架,与其它大型框架不 ... [详细]
  • 1、etcnginxconf.ddefault.conf,添加如下信息:location{try_files$uri$urirouter;rootho ... [详细]
  • 最近做项目时遇到一个问题,产品搜索后出来相关的列表,点击相关商品进入它的详情,返回后组件被重新创建,但产品需求是需要保留进入 ... [详细]
  • 注:根据Qt小神童的视频教程改编概论:利用最新的Qt5.1.1在windows下开发的一个小的时钟程序,有指针与表盘。1.Qtforwindows开发环境最新的Qt已经集 ... [详细]
  • 网络安全是一个非常重要的课题,基本上你运行的服务后台越多,你就可能打开更多的安全漏洞.如果配置的恰当的话,Linux本身是非常安全可靠的,假使在Linux系统中有某个安全缺陷,由于Linu ... [详细]
  • 本文涉及源码版本为2.6.9准备工作down一份Vue源码,从package.json入手,找我们需要的代码1、package.json中的scripts,build:nodesc ... [详细]
  • 一、MVCMVC模式,即软件可以分成三个部分Model、View、Controller。视图(View):用户界面。控制器(Controller):业务逻辑模型(Model):数据 ... [详细]
  • Vue项目之ElementUI(Breadcrumb)动态面包屑效果
    效果面包屑作用面包屑应该是我们在项目中经常使用的一个功能,一般情况下它用来表示我们当前所处的站点位置,也可以帮助我们能够更快的回到上个层级原始方式最笨的 ... [详细]
  • mpvue框架:搭建流程
    mpvue介绍mpvue(github地址请参见)是一个使用Vue.js开发小程序的前端框架。框架基于Vue.js核心,mpvue修改了 ... [详细]
  • 要论2018年最吸引人的技术是什么?绝对非微信小程序莫属。小程序从2016年开始内测公测,到2017年的不温不火,一直到2017年低&#x ... [详细]
  • 在mpvue中引入腾讯地图插件,没有报错也不显示地图。 ... [详细]
  • 怎么将iconfont字体图标引入到mpvue小程序中
    今天就跟大家聊聊有关怎么将iconfont字体图标引入到mpvue小程序中,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望 ... [详细]
  • 小组件在components文件夹中,页面组件在views文件夹中一、先写小组件的vue,比如text.vue(在template设置模板渲染,style设置样式)&amp;amp;lt;template&amp;amp;gt;&amp;amp;lt;divclass&amp;quot;text&amp;quot;&amp;amp;gt;&a ... [详细]
author-avatar
张兵在江湖
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有