Vue 全组件 局部组件
一、组件定义和使用
1、全局组件
定义
<template>
<div>
<h1>This is a global component</h1>
</div>
</template>
<script lang="ts">
</script>
<style></style>

导入
全局组件在main.ts(Vue + TS的项目)引入,
或者在main.js(Vue + JS的项目)引入
import { createApp } from 'vue'
import App from './App.vue'
import router from './router'
import store from './store'
import GlobalComponent from "../src/components/component/GlobalComponent.vue";
const app = createApp(App)
app.component("GlobalComponent",GlobalComponent);
app.use(store).use(router).mount('#app')

使用
全局组件可以在任意组件中使用,不需要再次导入

2、局部组件
定义

导入与使用

二、组件通信
1、props
(1)传递单个值


(2)传递多个值
如果传递的时对象,对象在被子组件的props接收时需要解构,依次写在props数组中


传递的如果是一个个的值,则直接在props数组中写入即可


2、插槽
插槽的作用:让子组件可以接收父组件传过来的元素、组件
(1)匿名插槽
如果父元素只传递一个元素,或者传递的多个元素会在一个地方使用,那么可以使用匿名插槽



(2)具名插槽
父组件会传递多个元素,这些元素需要再不同的地方使用,这时需要使用具名插槽进行区分



(3)作用域插槽
父组件需要用到子组件中的数据时,可以使用作用域插槽将子组件的数据传递过去
子组件
<template>
<div>
<h1>This is a local component</h1>
<slot v-for="(item,index) in list" :item="item" :index="index"/>
</div>
</template>
<script lang="ts" setup>
const list = [1,2,3,4];
</script>
//父组件
<template>
<div>
<h1>This is a component view</h1>
<div>
<GlobalComponent />
<LocalComponent v-slot="slotProps">
<div>{{ slotProps.item }}*****{{ slotProps.index }}</div>
</LocalComponent>
</div>
</div>
</template>
//父组件写法二
<template>
<div>
<h1>This is a component view</h1>
<div>
<GlobalComponent />
<LocalComponent v-slot="{item,index}">
<div>{{ item }}*****{{ index }}</div>
</LocalComponent>
</div>
</div>
</template>
3、provide&inject
父组件给子组件传值,子组件使用props接收,如果孙子组件乃至重孙子组件要使用父组件的数据,那么就要一层层用props传递,特别麻烦。
父组件使用provide(提供)提供数据
子组件、孙子组件、重孙子组件....可以使用inject接收数据
//父组件
<template>
<div>
<LocalComponent />
</div>
</template>
<script setup lang="ts">
import LocalComponent from "../components/component/LocalComponent.vue";
import { provide, ref } from "vue";
const msg = ref('hello world');
provide('msg',msg);
</script>
//子组件
<template>
<div>
LocalComponent
<GrandChild />
</div>
</template>
<script lang="ts" setup>
import GrandChild from '../component/GrandChild.vue';
</script>
//孙子组件
<template>
<div>
<h1>This is a GrandChild component</h1>
{{ msg }}
</div>
</template>
<script lang="ts" setup>
import { inject } from "vue";
const msg = inject('msg');
</script>
<style></style>
4、事件通信
三、异步组件
相关文章:
Vue 全组件 局部组件
一、组件定义和使用 1、全局组件 定义 <template> <div> <h1>This is a global component</h1> </div> </template> <script lang"ts"> </script> <style></style> 导入 全局组件在main.tsÿ…...
几个经典金融理论
完整EA:Nerve Knife.ex4黄金交易策略_黄金趋势ea-CSDN博客 一、预期效用理论 预期效用理论是描述人们在做出决策时如何考虑风险和不确定性的一种理论。该理论最初由经济学家冯诺伊曼(John von Neumann)和奥斯卡摩根斯坦恩(Oskar…...
c++语言max函数的使用
目录 头文件包含 使用语法 注意事项 头文件包含 首先,在使用std::max函数之前,需要包含头文件 <algorithm>。 #include <algorithm> 使用语法 std::max函数有两种重载形式,一种用于比较两个值,另一种用于比较多…...
c++阶梯之类与对象(下)
前文: c阶梯之类与对象(上)-CSDN博客 c阶梯之类与对象(中)-CSDN博客 c阶梯之类与对象(中)< 续集 >-CSDN博客 1. 再谈构造函数 1.1 构造函数体赋值 在创建对象时&a…...
机器学习--K-近邻算法常见的几种距离算法详解
文章目录 距离度量1 欧式距离(Euclidean Distance)2 曼哈顿距离(Manhattan Distance)3 切比雪夫距离 (Chebyshev Distance)4 闵可夫斯基距离(Minkowski Distance)5 标准化欧氏距离 (Standardized EuclideanDistance)6 余弦距离(Cosine Distance)7 汉明距离(Hamming Distance)【…...
<网络安全>《30 网络信息安全基础(1)常用术语整理》
1 肉鸡 所谓“肉鸡”是一种很形象的比喻,比喻那些可以随意被我们控制的电脑,对方可以是WINDOWS系统,也可以是UNIX/LINUX系统,可以是普通的个人电脑,也可以是大型的服务器,我们可以象操作自己的电脑那样来操…...
Git远程仓库的使用(Gitee)及相关指令
目录 1 远程仓库的创建和配置 1.1 创建远程仓库 1.2 设置SSH公钥 2 指令 2.1 git remote add 远端名称(一般为origin) 仓库路径 2.2 git remote 2.3 git push [-f] [--set-upstream] [远端名称 [本地分支名][:远端分支名]] 2.3 git clone url 2.4 git fetch 2.5 git p…...
vscode +markdown 的安装和使用
文章目录 前言一、vscode markdown 是什么?1.vscode是什么?2.markdown 是什么? 二、安装步骤1.下载2.安装 三、安装插件1.安装 Markdown All in One2.安装 Markdown Preview Enhanced3. Paste Image v1.0.44.LimfxCodeExv0.7.105.Code Spell …...
Python爬虫之自动化测试Selenium#7
爬虫专栏:http://t.csdnimg.cn/WfCSx 前言 在前一章中,我们了解了 Ajax 的分析和抓取方式,这其实也是 JavaScript 动态渲染的页面的一种情形,通过直接分析 Ajax,我们仍然可以借助 requests 或 urllib 来实现数据爬取…...
快速学习Spring
Spring 简介 Spring 是一个开源的轻量级、非侵入式的 JavaEE 框架,它为企业级 Java 应用提供了全面的基础设施支持。Spring 的设计目标是简化企业应用的开发,并解决 Java 开发中常见的复杂性和低效率问题。 Spring常用依赖 <dependencies><!-…...
c语言操作符(上)
目录 编辑 原码、反码、补码 1、正数 2、负数 3、二进制计算1-1 移位操作符 1、<<左移操作符 2、>>右移操作符 位操作符&、|、^、~ 1、&按位与 2、|按位或 3、^按位异或 特点 4、~按位取反 原码、反码、补码 1、正数 原码 反码 补码相同…...
vue3 可视化大屏自适应屏幕组件
首先定义了一个名叫ScreenContainerOptions的组件,需要传的参数如下 export type ScreenContainerOptions {width?: string | numberheight?: string | numberscreenFit?: boolean // 是否开启屏幕自适应,不然会按比例显示 } 组件的主要代码如下 …...
SpringCloud入门概述
1. 介绍 Spring Cloud 1.1 什么是 Spring Cloud Spring Cloud 是一个基于 Spring Boot 的微服务架构开发工具集,它为开发者提供了一系列开箱即用的工具和库,用于构建分布式系统中的微服务架构。Spring Cloud 提供了诸如服务发现、配置中心、负载均衡、…...
刷题计划_冲绿名
现在 rating 是 1104 准备刷 100道 1200的题,把实力提升到 1200 ,上一个绿名 每一个分数段的题都写一百道,争取早日上蓝 现在 虽然 cf 里面显示写了一些这个分数段的题,但是自己训练的时候,其实是没有训练一道这个分…...
【微信小程序开发】小程序版的防抖节流应该怎么写
由于微信小程序与普通网页的开发、编译、运行机制都有所不同,在防抖节流的方法使用上也就需要我们做一些比较棘手的适配操作。常见的H5开发的防抖节流此处就不再分享了,网上有太多的教程,或者直接问那群AI即可。 OK,言归正传&…...
单片机学习笔记---蜂鸣器播放提示音音乐(天空之城)
目录 蜂鸣器播放提示音 蜂鸣器播放音乐(天空之城) 准备工作 主程序 中断函数 上一节讲了蜂鸣器驱动原理和乐理基础知识,这一节开始代码演示! 蜂鸣器播放提示音 先创建工程:蜂鸣器播放提示音 把我们之前模块化的…...
软件实例分享,茶楼收银软件管理系统,支持计时计费商品销售会员管理定时语音提醒功能
软件实例分享,茶楼收银软件管理系统,支持计时计费商品销售会员管理定时语音提醒功能 一、前言 以下软件教程以 佳易王茶社计时计费管理系统软件V18.0为例说明 软件文件下载可以点击最下方官网卡片——软件下载——试用版软件下载 问:这个软…...
clang前端
Clang可以处理C、C和Objective-C源代码 Clang简介 Clang可能指三种不同的实体: 前端(在Clang库中实现)编译驱动程序(在clang命令和Clang驱动程序库中实现)实际的编译器(在clang-ccl命令中实现࿰…...
ARM:AI 的翅膀,还能飞多久?
ARM(ARM.O)于北京时间 2024 年 2 月 8 日上午的美股盘后发布了 2024 年第三财年报告(截止 2023 年 12 月),要点如下: 1、整体业绩:收入再创新高。ARM 在 2024 财年第三季度(即 23Q4…...
【C语言】常见字符串函数的功能与模拟实现
目录 1.strlen() 模拟实现strlen() 2.strcpy() 模拟实现strcpy() 3.strcat() 模拟实现strcat() 4.strcmp() 模拟实现strcmp() 5.strncpy() 模拟实现strncpy() 6.strncat() 模拟实现strncat() 7.strncmp() 模拟实现strncmp() 8.strstr() 模拟实现strstr() 9.str…...
新手避坑指南:STM32用Makefile编译时,遇到‘junk at end of line’错误怎么办?
STM32 Makefile编译实战:彻底解决junk at end of line汇编错误 第一次用Makefile编译STM32项目时,看到满屏的junk at end of line错误提示,确实容易让人头皮发麻。这就像你兴冲冲地下载了一个开源项目准备大展身手,结果刚执行make…...
2D高斯泼溅技术:动画头像重建的新突破
1. 项目概述:2D高斯泼溅技术在动画头像重建中的应用在计算机视觉和图形学领域,实时重建高质量、可动画化的3D人体头像一直是个具有挑战性的课题。传统方法通常需要复杂的多视角硬件系统,而基于单目视频的重建技术因其便捷性和实用性备受关注。…...
手机店还会存在吗
这两年买手机,有个很常见的小场景:人先进店,把样机拿起来拍几张照片,摸一下边框,试试重量,再问店员有没有现货。问完价格以后,很多人会低头打开电商平台。 门店最尴尬的地方就在这里。它承担了体…...
高速串行通信信号抖动关键技术【附模型】
✨ 长期致力于串行通信、抖动、抖动分析、时钟恢复、均衡研究工作,擅长数据搜集与处理、建模仿真、程序编写、仿真设计。 ✅ 专业定制毕设、代码 ✅ 如需沟通交流,点击《获取方式》 (1)基于有界不相关抖动注入的发送端信号生成模型…...
Rust内存安全:所有权、借用与生命周期深度解析
Rust内存安全:所有权、借用与生命周期深度解析 引言 在Rust开发中,内存安全是其最核心的特性。作为一名从Python转向Rust的后端开发者,我深刻体会到Rust在内存安全方面的革命性设计。Rust通过所有权系统、借用机制和生命周期注解࿰…...
手把手教你给Ubuntu 22.04的Intel蓝牙‘补丁’:ibt-1040-1050固件缺失的保姆级修复指南
深度修复Ubuntu 22.04中Intel蓝牙固件缺失问题:从原理到实践的全方位指南 在Linux系统中,硬件设备的正常运行往往依赖于对应的固件支持。对于使用Intel AX200/AX201等无线网卡的用户来说,蓝牙功能突然失效是一个常见但令人困扰的问题。本文将…...
Purple Pi OH开发板适配OpenHarmony 5.0全流程解析与实战
1. 项目概述:从一块开发板到OpenHarmony 5.0的完整旅程最近,我手头的这块触觉智能Purple Pi OH开发板,终于成功跑通了OpenHarmony 5.0 Release版本。这不仅仅是一次简单的系统升级适配,更像是一场从硬件引脚定义、内核驱动、系统服…...
异构多核处理器如何实现安卓、Linux与RTOS的原生融合?
1. 项目概述:一颗“三栖”处理器的诞生最近在嵌入式圈子和一些硬件开发者社区里,一个话题的热度悄然攀升:一颗号称能同时原生运行安卓、Linux和RTOS的国产CPU。这听起来有点像是“瑞士军刀”式的处理器,试图用一个硬件平台覆盖从消…...
告别PCL!用Qt+QGLWidget手把手教你打造自己的3D点云查看器(附完整源码)
轻量级3D点云可视化:基于Qt与OpenGL的高效实现方案 在工业测量、自动驾驶和三维重建等领域,点云数据的可视化一直是开发者面临的挑战。传统方案如PCL虽然功能强大,但其庞大的体积和复杂的依赖链往往让项目变得臃肿。本文将展示如何利用Qt的QG…...
保姆级教程:在Ubuntu 22.04上搞定DCU-Z100(ZiFang)驱动安装与验证
保姆级教程:在Ubuntu 22.04上搞定DCU-Z100(ZiFang)驱动安装与验证 国产DCU(Deep Computing Unit)正逐渐成为高性能计算领域的新选择,而DCU-Z100(代号ZiFang)作为其中的代表产品&…...
