前端基础之《Vue(8)—内置组件》

一、Vue2.0中的内置组件

1、<slot>
插槽

2、<keep-alive>
动态组件

被keep-alive所包裹的组件:
(1)不会被销毁。
(2)还会多两个生命周期钩子:activated()、deactivated()。
(3)mounted()只执行一次,activated()、deactivated()可以执行多次。

keep-alive的属性:
include:包含在include里面的组件不会死。
exclude:包含在exclude里面的组件会死,其他都不死。

3、<component>
它的is属性,is等于谁就显示谁。
有种v-if的感觉,根据指定条件渲染目标组件,它的is属性等于哪个组件,就显示哪个组件。
它经常配合<keep-alive>一起使用。

4、<transition>
过渡动画。
是Vue内置的一种动画方式。可以很方便的为元素显示隐藏或组件切换添加动画。

过渡动画的两个过程:(Enter进入动画、Leave离开动画)

(1)如何定义进入动画,定义css
.enter:动画刚刚进入的起点
.enter-active:动画的过程
.enter-to:动画的终点

(2)如何定义离开动画
.leave:动画离开的起点
.leave-active:动画的过程
.leave-to:动画的终点

(3)Vue过渡动画的终点是不会保留的,也就是说当动画结束后,元素的样式取决于它原来的样式。

(4)实际使用中,js动画用的少,css动画用的多
animate.css

5、<transition-group>

二、keep-alive组件例子

<html>
<head><title>动态组件</title><style>.tabbar {height: 60px;line-height: 60px;display: flex;position: fixed;bottom: 0;left: 0;right: 0;}.tabbar>span {flex: 1;border: 1px solid #ccc;text-align: center;cursor: pointer;}.tabbar>span.on {color: red;}</style>
</head>
<body><div id="app"><!-- <home-1></home-1><friend-1></friend-1><user-1></user-1> --><!-- 组件不死 --><keep-alive><component :is="page"></component></keep-alive><tabbar-1 v-model="page"></tabbar-1></div><script src="https://cdn.jsdelivr.net/npm/vue@2.7.16/dist/vue.js"></script><script>const Home = {template:`<div><h1>首页</h1><input type="text" v-model="a" /></div>`,data() {return {a: 1}},mounted() {console.log('---首页挂载完成')},activated() {console.log('---首页激活')},deactivated() {console.log('---首页休眠')}}const Friend = {template:`<div><h1>好友</h1><input type="text" v-model="b" /></div>`,data() {return {b: 1}}}const User = {template:`<div><h1>个人中心</h1><input type="text" v-model="c" /></div>`,data() {return {c: 1}}}Vue.component('tabbar-1', {template: `<div class='tabbar'><span v-for='item in list' v-text='item.label' @click='$emit("input",item.tab)' :class='{on:item.tab===value}'></span></div>`,props: {value: {type: String, default:''}},data() {return {list: [{id:1, tab:'home-1', label:'首页'},{id:2, tab:'friend-1', label:'好友'},{id:3, tab:'user-1', label:'个人中心'}]}}})const app = new Vue({components: {'home-1': Home,'friend-1': Friend,'user-1': User},data() {return {page: 'home-1'}}})app.$mount('#app')</script></body>
</html>

三、transition组件例子

<html>
<head><title>过渡动画</title><style>.my-enter {opacity: 0;color: red;font-size: 12px;}.my-enter-active {transition: all ease 2s;}.my-enter-to {opacity: 1;color: black;font-size: 20px;}.my-leave {opacity: 1;color: black;font-size: 20px;}.my-leave-active {transition: all ease 2s;}.my-leave-to {opacity: 0;color: blue;font-size: 12px;}</style>
</head>
<body><div id="app"><transition name="my"><h1 v-if="bol1">测试动画效果</h1></transition><button @click='bol1=!bol1'>显示/隐藏</button></div><script src="https://cdn.jsdelivr.net/npm/vue@2.7.16/dist/vue.js"></script><script>const app = new Vue({data() {return {bol1: true}}})app.$mount('#app')</script></body>
</html>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/78213.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

某大型电解铝厂电解系统谐波治理装置改造沃伦森电气

电解铝行业谐波治理解决方案——无源滤波装置优化升级&#xff0c;保障稳定运行 在电解铝生产过程中&#xff0c;谐波污染问题严重影响电网电能质量&#xff0c;甚至可能导致滤波装置损坏&#xff0c;引发群爆事故。河南登封某大型电解铝厂通过无源滤波装置智能化改造&#xff…

在 Ubuntu 环境为 Elasticsearch 引入 `icu_tokenizer

1. 为什么需要 ICU 分析插件 Elasticsearch 默认的 standard tokenizer 遵循 UAX #29 规则&#xff0c;但在 CJK&#xff08;中、日、韩&#xff09;等亚洲语言上仅能按字符切分&#xff0c;无法识别词边界&#xff1b;对包含重音符号、大小写或多脚本混排的文本也缺乏统一归一…

避免事件“穿透”——Vue 中事件冒泡的理解与解决方案

一、事件冒泡是什么&#xff1f; 事件冒泡指的是&#xff1a;当某个元素上的事件被触发后&#xff0c;事件会从该元素向其父级、祖先元素一直“冒泡”传递&#xff0c;直到 document。这意味着&#xff0c;如果父元素绑定了点击事件&#xff0c;子元素触发点击时也可能顺带触发…

【Java面试笔记:进阶】17.一个线程两次调用start()方法会出现什么情况?

1. 线程启动与异常 线程启动:Java 线程只能启动一次,通过调用 Thread 对象的 start() 方法。多次启动的后果:如果尝试第二次调用 start() 方法,会抛出 IllegalThreadStateException 运行时异常。(1) 代码示例 public class ThreadStartDemo {public static void main(Stri…

Flask + ajax上传文件(一)

一、概述 本教程将教你如何使用Flask后端和AJAX前端实现文件上传功能,包含完整的代码实现和详细解释。 二、环境准备 1. 所需工具和库 Python 3.xFlask框架jQuery库Bootstrap(可选,用于美化界面)2. 安装Flask pip install flask三、项目结构 upload_project/ ├── a…

NHANES指标推荐:TyG-WHtR

文章题目&#xff1a;Can cardiovascular health and its modifiable healthy lifestyle offset the increased risk of all-cause and cardiovascular deaths associated with insulin resistance? DOI&#xff1a;10.1186/s12933-025-02674-z 中文标题&#xff1a;心血管健康…

OpenHarmony 开源鸿蒙北向开发——hdc工具使用及常用命令(持续更新)

hdc&#xff08;OpenHarmony Device Connector&#xff09;是为开发人员提供的用于设备连接调试的命令行工具&#xff0c;该工具需支持部署在 Windows/Linux/Mac 等系统上与 OpenHarmony 设备&#xff08;或模拟器&#xff09;进行连接调试通信。简单来讲&#xff0c;hdc 是 Op…

MCP servers源码详细解析

MCP servers详细解析 Model Context Protocol (MCP) 是一个标准化协议&#xff0c;用于让大型语言模型&#xff08;LLMs&#xff09;通过结构化服务器安全地与工具和数据源交互。项目提供了 参考实现、官方集成和社区贡献的服务器&#xff0c;支持数据库、API、文件系统等场景…

美乐迪电玩大厅加载机制与 RoomList 配置结构分析

本篇为《美乐迪电玩全套系统搭建》系列的第三篇&#xff0c;聚焦大厅与子游戏的动态加载机制&#xff0c;深入解析 roomlist.json 的数据结构、解析流程、入口配置方式与自定义接入扩展技巧。通过本篇内容&#xff0c;开发者可实现自由控制子游戏接入与分发策略。 一、RoomList…

HarmonyOS-ArkUI: 属性动画:animation

HarmonyOS-ArkUI:关键帧动画 keyFrameAnimateTo-CSDN博客 HarmonyOS-ArkUI: animateTo 显式动画-CSDN博客 至今为止,已经讲了两个动画了(显式动画,关键帧动画如链接所示),这个属性动画是第三个。鸿蒙的属性动画,和Android中的属性动画,迥异,也就是名字不同罢了。所以之…

强化学习(Reinforcement Learning, RL)和深度学习(Deep Learning, DL)

强化学习&#xff08;Reinforcement Learning, RL&#xff09;和深度学习&#xff08;Deep Learning, DL&#xff09;是人工智能领域两个重要的研究方向&#xff0c;虽然二者可以结合&#xff08;如深度强化学习&#xff09;&#xff0c;但其核心思想、目标和应用场景存在本质区…

处理任务“无需等待”:集成RabbitMQ实现异步通信与系统解耦

在前几篇文章中&#xff0c;我们构建的Web应用遵循了一个常见的同步处理模式&#xff1a;用户发出HTTP请求 -> Controller接收 -> Service处理&#xff08;可能涉及数据库操作、调用其他内部方法&#xff09;-> Controller返回HTTP响应。这个流程简单直接&#xff0c;…

Obsidian和Ollama大语言模型的交互过程

之前的文章中介绍了Obsidian配合Ollama的使用案例&#xff0c;那么它们是如何配合起来的呢&#xff1f;其实这个问题并不准确&#xff0c;问题的准确描述应该是Obsidian的Copilot插件是如何与Ollama大语言模型交互的。因为Obsidian在这里只是一个载体&#xff0c;核心功能还是C…

4.1 融合架构设计:LLM与Agent的协同工作模型

大型语言模型&#xff08;Large Language Models, LLMs&#xff09;与智能代理&#xff08;Agent&#xff09;的融合架构已成为人工智能领域推动企业智能化的核心技术。这种协同工作模型利用LLM的语言理解、推理和生成能力&#xff0c;为Agent提供强大的知识支持&#xff0c;而…

龙虎榜——20250424

指数依然是震荡走势&#xff0c;接下来两天调整的概率较大 2025年4月24日龙虎榜行业方向分析 一、核心主线方向 化工&#xff08;新能源材料产能集中&#xff09; • 代表标的&#xff1a;红宝丽&#xff08;环氧丙烷/锂电材料&#xff09;、中欣氟材&#xff08;氟化工&…

Linux 服务器运维常用命令大全

1.基础命令 1.1 文件与目录操作 ls -l #列出文件详细信息 ls -a #显示隐藏文件 cd /path/to/directory #切换目录 pwd #显示当前工作目录 mkdir dirname #创建目录 rm -rf dirname #删除…

动态渲染页面智能嗅探:机器学习判定AJAX加载触发条件

本文提出了一种基于机器学习的智能嗅探机制&#xff0c;革新性地应用于自动判定动态渲染页面中AJAX加载的最佳触发时机。系统架构采用先进模块化拆解设计&#xff0c;由请求分析模块、机器学习判定模块、数据采集模块和文件存储模块四大核心部分构成。在核心代码示例中&#xf…

sql高级之回表

避免回表是数据库查询优化的核心目标之一&#xff0c;指通过索引直接获取查询所需的全部数据&#xff0c;无需根据索引结果再回主表&#xff08;数据行&#xff09;读取其他字段&#xff0c;从而减少磁盘 I/O 和计算开销。以下是详细解释&#xff1a; 1. 什么是回表&#xff1…

第十一届机械工程、材料和自动化技术国际会议(MMEAT 2025)

重要信息 官网&#xff1a;www.mmeat.net 时间&#xff1a;2025年06月23-25日 地点&#xff1a;中国-深圳 部分展示 征稿主题 智能制造和工业自动化 复合材料与高性能材料先进制造技术 自动化机器人系统 云制造与物联网集成 精密制造技术 智能生产线优化 实时数据分析与过…

动态自适应分区算法(DAPS)设计流程详解

动态自适应分区算法&#xff08;Dynamic Adaptive Partitioning System, DAPS&#xff09;是一种通过实时监测系统状态并动态调整资源分配策略的智能算法&#xff0c;广泛应用于缓存优化、分布式系统、工业制造等领域。本文将从设计流程的核心步骤出发&#xff0c;结合数学模型…