第十一单元(内置组件)

#课程目标

  1. 熟练掌握component组件的用法
  2. 熟练使用keep-alive组件

#知识点

#1.component组件

component是vue的一个内置组件,作用是:配合is动态渲染组件

<component :is='组件'></component>
1

不同组件之间进行动态的切换

App.js:

<template>
<div>
<div>
<div>
<button @click="handleShow('Login')">登录</button>
<button @click="handleShow('Index')">首页</button>
</div>
<component :is="name"></component>
</div>
</div>
</template> <script>
import Login from "./components/Login";
import Index from "./components/Index"; export default {
data() {
return {
name: "Login",
};
},
components: {
Login,
Index
},
methods: {
handleShow(name) {
this.name = name;
},
},
mounted() {
console.log('挂载父组件')
}
};
</script>
 

components/Login.vue:

<template>
<div>
登录
</div>
</template> <script>
export default {
mounted() {
console.log('挂载登录组件')
},
beforeDestroy() {
console.log('销毁登录组件')
}
}
</script> <style> </style>
 

components/Index.vue:

<template>
<div>
首页
</div>
</template> <script>
export default {
mounted() {
console.log('挂载首页组件')
},
beforeDestroy() {
console.log('销毁首页组件')
}
}
</script> <style> </style>
 

我们在父组件和子组件中分别定义个生命周期钩子mounted,页面加载到完成,父组件先渲染完成还是子组件先渲染完成呢?答案是子组件先渲染完成。

参考链接:https://blog.csdn.net/qq_42778001/article/details/99091540

#2.keep-alive组件

两个组件进行切换时,一个组件显示,另一个是组件隐藏还是销毁呢?答案是不断的创建与销毁的过程。 如果你想把组件的缓存下来,可以在动态组件上使用vue另一个内置组件keep-alive

    <keep-alive>
<component :is='state'></component>
</keep-alive>
 

这样,当切换组件时,组件会被缓存下来,不会执行created 、mounted、beforeDestroy钩子函数。

是一个抽象组件:它自身不会渲染一个 DOM 元素,也不会出现在父组件链中。

vue第十一单元(内置组件)的更多相关文章

  1. 阅读vue源码-----内置组件篇(keep-alive)

    1.前言: <keep-alive>是vue实现的一个内置组件,也就是说vue源码不仅实现了一套组件化的机制,也实现了一些内置组件. <keep-alive>官网介绍如下:&l ...

  2. Vue基础(环境配置、内部指令、全局API、选项、内置组件)

    1.环境配置 安装VsCode 安装包管理工具:直接下载 NodeJS 进行安装即可,NodeJS自带 Npm 包管理工具,下载地址:https://nodejs.org/en/download/安装 ...

  3. 通俗易懂了解Vue内置组件keep-alive内部原理

    1. 官方介绍及其用法 1.1 组件介绍 要想搞明白<keep-alive>组件的内部实现原理,首先我们得搞明白这个组件怎么用以及为什么要用它,关于<keep-alive>组件 ...

  4. Vue内置组件[回顾]

    1.动态组件 在某些场景,往往需要我们动态切换页面部分区域的视图,这个时候内置组件component就显得尤为重要. component接收一个名为is的属性,is的值应为父组件中注册过的组件的名称, ...

  5. Vue内置组件keep-alive的使用

    本文主要介绍Vue内置组件keep-alive的使用. Vue内置组件keep-alive的使用 keep-alive接收三个props:●include - 字符串或正则表达式.只有名称匹配的组件会 ...

  6. form-create教程:给内置组件和自定义组件添加事件

    本文将介绍form-create如何给内置组件和自定义组件添加事件 form-create 是一个可以通过 JSON 生成具有动态渲染.数据收集.验证和提交功能的表单生成器.并且支持生成任何 Vue ...

  7. vue-learning:33 - component - 内置组件 - 过渡组件transition

    vue内置过渡组件transition 目录 什么是过渡 基本过渡或动画实现的语法 css过渡动画:transition / animation js过渡:特定事件钩子函数 各种情形下的过渡实现,使用 ...

  8. Django:内置组件Content-Type

    12.Django组件之Content_Type 1.帮助我们生成了一张表,里面有所有表名.这样不再自建表在表中填表名,用Foreignkey获取 2.为了让我们快速进入插入数据,填写一个字段Gene ...

  9. Ionic4.x Theming(主题) 增加内置主题 颜色 修改内置组件默认样式 修改底部 Tabs 背景颜色以及按钮颜色

    1.Ionic4.x Theming(主题) Ionic4.x 修改主题颜色的话需要在 src/theme/variables.scss 文件中修改. https://ionicframework.c ...

随机推荐

  1. .Net orm 开源项目 FreeSql 2.0.0(满意的答卷)

    写在开头 2018年11月头脑发热到今天,一晃已经两年,当初从舒服区走向一个巨大的坑,回头一看后背一凉. 两年时间从无到有,经历数不清的日夜奋斗(有人问花了多长时间投入,答案:全职x2 + 两年无休息 ...

  2. 实战教程:如何将自己的Python包发布到PyPI上

    1. PyPi的用途 Python中我们经常会用到第三方的包,默认情况下,用到的第三方工具包基本都是从Pypi.org里面下载. 我们举个栗子: 如果你希望用Python实现一个金融量化分析工具,目前 ...

  3. Java基础知识面试题(最详细版)

    刚刚经历过秋招,看了大量的面经,顺便将常见的Java常考知识点总结了一下,并根据被问到的频率大致做了一个标注.一颗星表示知识点需要了解,被问到的频率不高,面试时起码能说个差不多.两颗星表示被问到的频率 ...

  4. linux命令模式配置安装mysql

    系统环境: centos 7.1 使用模式:命令模式 使用工具:xshell5 . xftp5 安装mysql前必须删除干净旧的安装包和残留文件,否则安装会失败 查看旧的安装包 rpm -qa | g ...

  5. .net core3.1开始页面实时编译

    安装NuGet包 Install-Package Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation  startup.cs 中的ConfigureSe ...

  6. 新手上路A4——多JDK环境变量的配置

    目录 配置单个JDK的方法 配置2+JDK的方法 方法 补充 检查JDK版本是否切换成功 前面讲了如何选择Java版本. 以及JDK8和JDK11的下载安装配置 有想法的人就开始发动他们优秀的小脑袋瓜 ...

  7. js创世纪--刨根问底原型和原型链

    原型和原型链 看图说话: 1.对象内部具有[[Prototype]]属性,该属性不可直接访问,浏览器通过__proto__(两条'_')可以让用户读写该内部属性,最重要的是,该属性指向创建本对象的原型 ...

  8. Jdk源码-集合类主要原理和解析

    写在前面 熟悉Jdk原理的重要性不言而喻,作为Java开发者或者面试者,了解其实现原理也显得更为装逼,在Java读书计划我写到了,它是面试中最基础的一部分,所以单独拿出来做个总结,为了更好滴理解和学习 ...

  9. IDEA无法识别module

    如图,我爱算法模块无法识别 如此,放开注释部分 即可

  10. Python中对输入的可迭代对象元素排序的sorted函数

    sorted根据输入可迭代对象中的项返回一个新的已排序列表,原输入参数对象中的数据不会发生变化. 具体可参考:<Python中与迭代相关的函数>的详细介绍 老猿Python,跟老猿学Pyt ...