【Vue3】3-2 : 组件的概念及组件的基本使用方式

本书目录:点击进入

一、组件的概念

1.1、为什么要做成组件

1.2、【案例】评分组件与按钮组件的抽离过程 

二、组件的使用 - 抽离结构

2.1、【案例】简易首页

>  效果

>  代码 - 原始

>  代码 - 组件抽离结构

>  ​​​​​​​代码 - 测试响应式数据

三、组件的命名方式与规范

四、根组件

4.1、【测试】根组件中 template的结构 优先级高于 app容器中的结构

>  ​​​​​​​【效果】当template和app容器中同时出现结构时,效果

>  ​​​​​​​【效果】当只有template

>  ​​​​​​​【效果】当只有app容器

 五、局部组件 与 全局组件

总结:组件使用步骤

Stage 1:申明

Stage 2:注册

Stage 3:使用

根组件:注册后直接在app容器中使用(见上图Myhead)

子组件:注册后在父组件 template中使用(见上图MyLogo)

5.1、全局组件

>  ​​​​​​​代码 

>  效果

5.2、局部组件

>  ​​​​​​​代码 

>  效果


一、组件的概念

        组件是带有名称的可复用实例,通常一个应用会以一棵嵌套的组件树的形式来组织,比如:页头、侧边栏、内容区等组件。

1.1、为什么要做成组件

         将 结构,样式,逻辑 抽离出来做成组件方便复用和后期维护

1.2、【案例】评分组件与按钮组件的抽离过程 

二、组件的使用 - 抽离结构

2.1、【案例】简易首页

>  效果

>  ​​​​​​​代码 - 原始

<body><div id="app"><header><div>hello world</div><h2>logo</h2><ul><li>首页</li><li>视频</li><li>音乐</li></ul></header></div>
</body>

>  ​​​​​​​代码 - 组件抽离结构

<body><div id="app"><my-head></my-head></div><script>let app = Vue.createApp({data(){return {}}})app.component('my-head', {template: `<header><div>{{ message }}</div><h2>logo</h2><ul><li>首页</li><li>视频</li><li>音乐</li></ul></header>`});let vm = app.mount('#app');</script>
</body>

>  ​​​​​​​代码 - 测试响应式数据

三、组件的命名方式与规范

  • 定义组件:驼峰、短线 两种风格定义

  • 调用组件:短线方式

四、根组件

        app容器可以看成根组件,所以根组件跟普通组件都具备相同的配置信息,例如:data、computed、methods 等等选项。

<div id="app"><my-head></my-head>
</div>
<script>// 根组件let RootApp = {data(){return {}}};// MyHead组件let MyHead = {template: `<header><div>{{ message }}</div><h2>logo</h2><ul><li>首页</li><li>视频</li><li>音乐</li></ul></header>`};let app = Vue.createApp(RootApp)app.component('MyHead', MyHead);let vm = app.mount('#app');</script>

4.1、【测试】根组件中 template的结构 优先级高于 app容器中的结构

  • app容器中的结构

  •  根组件中 template的结构

>  ​​​​​​​【效果】当template和app容器中同时出现结构时,效果

>  ​​​​​​​【效果】当只有template

>  ​​​​​​​【效果】当只有app容器

 五、局部组件 与 全局组件

总结:组件使用步骤

Stage 1:申明

    let MyLogo = {template: `<h2>logo</h2>`};

Stage 2:注册

分两种

  • 全局注册
    //全局组件app.component('MyHead', MyHead);app.component('MyLogo', MyLogo);
  • 局部注册(谁使用,谁注册)

Stage 3:使用

  • 根组件:注册后直接在app容器中使用(见上图Myhead)
  • 子组件:注册后在父组件 template中使用(见上图MyLogo)

5.1、全局组件

>  ​​​​​​​代码 

<body><div id="app"><my-head></my-head></div><script>let MyLogo = {template: `<h2>logo</h2>`};let MyHead = {template: `<header><div>{{ message }}</div><my-logo></my-logo><ul><li>首页</li><li>视频</li><li>音乐</li></ul></header>`};let RootApp = {data(){return {}}};let app = Vue.createApp(RootApp)//全局组件app.component('MyHead', MyHead);app.component('MyLogo', MyLogo);let vm = app.mount('#app');</script>
</body>

>  效果

5.2、局部组件

>  ​​​​​​​代码 

>  效果

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

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

相关文章

LeetCode 1068. 产品销售分析 I

销售表 Sales&#xff1a; ------------------ | Column Name | Type | ------------------ | sale_id | int | | product_id | int | | year | int | | quantity | int | | price | int | ------------------ (sale_id, year) 是销售表 Sales 的主键&#xff08;具有唯一值的…

如何在Windows 10/11的防火墙中禁止和允许某个应用程序,这里提供详细步骤

想阻止应用程序访问互联网吗&#xff1f;以下是如何通过简单的步骤阻止和允许Windows防火墙中的程序。​ 一般来说&#xff0c;大多数用户永远不需要担心应用程序访问互联网。然而&#xff0c;在某些情况下&#xff0c;你需要限制应用程序访问互联网。 例如&#xff0c;有问题…

jmeter--4.参数化的方式

目录 1. 用户定义的变量 2. 用户参数 3. 函数助手 3.1 time获取当前时间 3.2 Random随机数 3.3 随机字符串函数 3.4 字符串变更为大写 4. CSV数据文件设置 5. 接口关联--正则和json等提取 1. 用户定义的变量 线程组->添加->配置元件->用户定义的变量 引用方…

GPU异构计算中心的案例一

互联网行业AI训练平台案例 ——容器NV Device Pulg-In虚拟化技术 构建弹性资源池 背景 某头部互联网搜索公司的AI训练平台支撑搜索的全AI业务的训练任务&#xff0c;平台采用K8SDockerNV Device Pulg-In方式&#xff0c;以物理GPU卡为最小单位为用户分配GPU资源。 痛点 存在…

女娲造人?建造者模式!

什么是建造者模式&#xff1f; 传说女娲是用泥巴捏出人来的&#xff0c;当时捏出的小泥人虽然每个都是两条腿、两只手、一个脑袋的样子&#xff0c;但是具体到每个部位&#xff0c;却有有所不同&#xff1a;有的小泥人手长一点&#xff0c;有的手短一点&#xff1b;有的脑袋圆…

安达发|APS工序排程甘特图功能介绍

工序排程甘特图的主要功能 1. 显示工序时间安排&#xff1a;工序排程甘特图可以清晰地展示生产过程中各个工序的开始时间、结束时间和持续时间&#xff0c;从而帮助企业了解生产过程中各个环节的时间安排。 2. 显示工序进度情况&#xff1a;通过工序排程甘特图&#xff0c;企业…

计算机毕业设计-----SSH高校科研管理系统平台

项目介绍 本项目包含超级管理员、管理员、教师三种角色&#xff1b; 超级管理员角色包含以下功能&#xff1a; 登录,教师管理,管理员管理等功能。 管理员角色包含以下功能&#xff1a; 登录,专业参赛奖项管理,科技论文发表管理,出版专业著作管理,科研项目立项管理,科研项目结…

数据结构--排序

参考【算法】排序算法之希尔排序 - 知乎 (zhihu.com)https://zhuanlan.zhihu.com/p/122632213 1. 排序的定义 2. 插入排序 2.1 直接插入排序 在插入第i&#xff08;i>1)个记录时&#xff0c;前面的i-1个记录已经排好序 void insertSort(int r[],int n) {for(int i2;i<…

《WebKit 技术内幕》之二: HTML 网页和结构

第二章 HTML 网页和结构 HTML网页是利用HTML语言编写的文档&#xff0c;HTML是半结构化的数据表现方式&#xff0c;它的结构特征可以归纳为&#xff1a;树状结构、层次结构和框结构。 1.网页构成 1.1 基本元素和树状结构 HTML网页使用HTML语言撰写的文档&#xff0c;发展到今…

合适的索引顺序

一.前言 正确的顺序依赖于使用索引的查询,并且同时需要考虑如何更好地满足排序和分组的需要。因为哈希或者其他类型的索引并不会像 B-Tree索引一样顺序存储数据,所以这里只针对B-Tree展开讨论。 二.合适的索引顺序 1. 概念 对于如何选择索引顺序有一个经验法则: 将选择性最…

hcip-4

ISIS:中央系统到中央系统 基于OSI模型开发&#xff1b; 集成的ISIS&#xff0c;基于OSI开发后转移到TCP/IP模型执行&#xff1b; 故集成的ISIS既可以在OSI模型&#xff0c;也可在TCP/IP模型工作&#xff1b; ISIS是在ISP中使用的一个IGP协议&#xff0c;其归属于无类别链路状…

HashData湖仓一体方案:方案概览与Hive数据同步

随着云计算、大数据、AI的发展和普及&#xff0c;各行各业的业务场景日益复杂&#xff0c;数据呈现出大规模、多样性的特点&#xff0c;企业对数据仓库的需求也进一步拓展至对多元化数据实时处理的场景。 数据湖是多元数据存储与使用的便捷选择&#xff0c;而云原生具有数据资…

大模型相关资料

1、训练框架 1.1 DeepSpeed paper: https://arxiv.org/pdf/1910.02054.pdf相关资料&#xff1a; [译] DeepSpeed&#xff1a;所有人都能用的超大规模模型训练工具 【LLM工程篇】deepspeed | Megatron-LM | fasttransformer 分布式机器学习里的 数据并行 和 模型并行 各是什么…

谷歌aab包在Android 14闪退而apk没问题(targetsdk 34)

问题原因 Unity应用(target SDK 34)上线到GooglePlay&#xff0c;有用户反馈fold5设备上&#xff08;Android14系统&#xff09;疯狂闪退&#xff0c;经测试&#xff0c;在小米手机Android14系统的版本复现成功了&#xff0c;奇怪的是apk直接安装没问题&#xff0c;而打包成aa…

导出zoedepth的onnx模型并基于gradio实现在线部署

运行环境说明,其依赖: torch + python-opencv + onnxruntime + gradio + numpy + einops 导出onnx后运行环境依赖: python-opencv + onnxruntime + gradio + numpy + einops 1、 前置修改 1.1 ZoeDepth运行前准备 参考使用ZoeDepth生成深度估计图 ,下载项目:https://gi…

浙大恩特客户资源管理系统CrmBasicAction.entcrm接口存在任意文件上传漏洞

@[toc] 免责声明:请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息或者工具而造成的任何直接或者间接的后果及损失,均由使用者本人负责,所产生的一切不良后果与文章作者无关。该文章仅供学习用途使用。 1. 浙大恩特客户资源管理系统接口简介 微信公…

搭建eureka-server

首先要搭建注册中心服务端&#xff1a;eureka-server&#xff0c;这必须是一个独立的微服务 1.创建项目 创建maven工程即可 2.引入依赖 提示&#xff1a;starter是springboot中的自动装配&#xff0c;在这个依赖里&#xff0c;已经帮我们把eureka的所有配置都做好了 <de…

构建一个最新版本 Maven 项目

文章目录 构建一个最新版本 Maven 项目1. 所用各种软件的版本2. 踩过的坑3. 构建项目过程4. 项目打包方式 构建一个最新版本 Maven 项目 截止 2024 年 1 月 13 日&#xff0c;Apache 官网上 Maven 的最新安全版本为 3.9.6&#xff0c;下载、安装及配置方法见之前的博客&#x…

C++ Webserver从零开始:基础知识(二)——高级I/O函数

前言 本章将介绍一部分Linux高级I/O函数&#xff0c;这部分函数我不会像第一章那样每个参数都去介绍它的作用&#xff0c;因为它们并不像基础API那样经常使用 但是这一章的API可以大大提高最终Webserver的工作效率&#xff0c;所以我会简要介绍每个函数的大概作用。 读者在了…

SUKER书客重磅发布—书客Sun立式护眼台灯,掀起光学护眼养眼新纪元

SUKER书客作为台灯行业的引路者&#xff0c;在台灯中取得颠覆行业的成绩后&#xff0c;并没有就此停下脚步&#xff0c;终于在近日的新品发布中揭露了神秘面纱——书客Sun立式护眼灯&#xff0c;再现创新光学护眼养眼&#xff0c;突破行业护眼天花板&#xff0c;帮助孩子们预防…