vue小项目总结与笔记【八】——keep-alive的使用
时间:2019-03-21
本文章向大家介绍vue小项目总结与笔记【八】——keep-alive的使用,主要包括vue小项目总结与笔记【八】——keep-alive的使用使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
keep-alive的作用:
当我们第一次进入列表页需要请求一下数据,当我从列表页进入详情页,详情页不缓存也需要请求下数据,然后返回列表页,又需要请求数据,这就导致多次请求数据,降低了性能。这时候我们使用keep-alive来缓存组件,防止二次渲染,这样会大大的节省性能。
keep-alive的基本用法:
<template>
<div id="app">
// keep-alive 路由的内容被加载过一次之后,就自动保存到内存中,不需要重新请求数据(不会再执行mounted,需要重新请求的ajax可以放在activated中)
// exclude="Detail" 可设置详情页不缓存 因为要获取每一个的id
<keep-alive :exclude="/WeekendDetail|Detail/">
// router-view 显示的是当前路由的地址所对应的内容
<router-view/>
</keep-alive>
</div>
</template>
<script>
export default {
name: 'App'
}
</script>
<style>
</style>
用了keep-alive后,会多出一个生命周期函数 activated,有需要重新请求的ajax就放在里面,因为mounted在返回该页面时不会再执行。
mounted () {
this.lastCity = this.city
this.getHomeInfo()
},
activated () {
// 城市与上次不同时 首页要重新发送ajax请求
if (this.lastCity !== this.city) {
this.lastCity = this.city
this.getHomeInfo()
}
}
但是如果使用了 :exclude="/组件1|组件2/" ,意思是组件1,组件2被排除在外,这两个组件不使用keep-alive,所以在组件1和2中,执行ajax请求还是用mounted就好。
- 深度学习2017成果展
- Python正则表达式中的re.S的作用
- 图片转文字居然这么简单,多亏了这几个神器!
- 三、请求库之requests模块
- 升级 微信技术输出 时尚新门店尝鲜刷脸支付
- WSP Global品牌升级 启用3声母域名
- 一、爬虫基本原理
- python 中__setattr__, __getattr__,__getattribute__, __call__使用方法
- 量子技术与人工智能:同时进化的双生子
- TCP协议三次握手与四次挥手通俗解析
- Silverlight/aspx/ajax/mvc的UI自动化测试
- Office Open XML学习(1)-创建excel文档,并向单元格中插入字符串
- PyMC3和Theano代码构建贝叶斯深度网络,61页PPT探索贝叶斯深度学习以及实现
- 男程序员是不是都不会和女生表达交流?程序员的回答歪了
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 【UI自动化-3】UI自动化元素操作专题
- maven的安装与使用
- 【Java多线程-1】线程概述与线程创建和使用
- 【Java多线程-2】Java线程池详解
- 【Java多线程-3】Future与FutureTask
- 【Java多线程-4】CompletionService详解
- 【Java多线程-5】 CompletableFuture详解
- 【Java多线程-6】synchronized同步锁
- 【Java多线程-7】阅尽Java千般锁
- 【SpringBoot注解-2】AOP相关注解详解
- 【SpringBoot注解-3】Bean注入相关注解
- 【SpringBoot注解-4】:@Target、@Retention、@Documented注解简介
- 【Linux系列-1】top命令详解
- 【Linux系列-2】iostat命令详解
- 【Mybatis-1】MyBatis注解版详解