【Vue3】具名插槽

news2025/1/12 18:46:54

【Vue3】具名插槽

  • 背景
  • 简介
  • 开发环境
  • 开发步骤及源码

背景

随着年龄的增长,很多曾经烂熟于心的技术原理已被岁月摩擦得愈发模糊起来,技术出身的人总是很难放下一些执念,遂将这些知识整理成文,以纪念曾经努力学习奋斗的日子。本文内容并非完全原创,大多是参考其他文章资料整理所得,感谢每位技术人的开源精神。

简介

本文介绍 Vue3 中如何使用具名插槽。

Vue 中的插槽包含三类:

  • 默认插槽
  • 具名插槽
  • 作用域插槽

具名插槽,顾名思义是指带有名字的插槽,一个组件中只能包含一个默认插槽,当存在多个插槽时便要使用具名插槽。

注意:默认插槽实际上也是有名称的,为 default

开发环境

分类名称版本
操作系统WindowsWindows 11
IDEVisual Studio Code1.91.1

开发步骤及源码

1> 在【Vue3】默认插槽 基础上修改带插槽的功能组件。

<template>
    <div class="store">
        <slot name="s-title">默认标题</slot>
        <hr>
        <slot name="s-content">默认内容</slot>
    </div>
</template>

<script setup lang="ts">
</script>

<style scoped lang="scss">
.store {
    background-color: green;
    box-shadow: 0 0 10px;
    color: white;
    padding: 10px;
    width: 300px;
}
</style>

具名插槽即在 <slot> 标签中添加 name 属性,<slot> 标签中的内容为默认显示内容,当父组件未指定插槽位置应该显示的内容时,就显示此默认内容。

2> 修改 Vue 根组件 src/App.vue,引用自定义功能组件。

<template>
  <div class="root">
    <h1 ref="title">App组件</h1>
    <div class="stores">
      <Store>
        <template v-slot:s-title>
          无需列表
        </template>
        <template v-slot:s-content>
          <ul>
            <li v-for="film in films" :key="film.id">{{ film.name }}</li>
          </ul>
        </template>
      </Store>
      <Store>
        <template #s-content>
          <ol>
            <li v-for="film in films" :key="film.id">{{ film.name }}</li>
          </ol>
        </template>
        <template #s-title>
          有序列表
        </template>
      </Store>
      <Store>
      </Store>
    </div>
  </div>
</template>

<script setup lang="ts">
import Store from './components/Store.vue'
import { reactive } from 'vue'

const films = reactive([
  { id: '001', name: '哈利波特与魔法石'},
  { id: '002', name: '哈利波特与密室'},
  { id: '003', name: '哈利波特与阿兹卡班的囚徒'},
  { id: '004', name: '哈利波特与凤凰社'},
])
</script>

<style scoped lang="scss">
.root {
  background-color: orange;
  box-shadow: 0 0 10px;
  padding: 20px;
  h1 {
    text-align: center;
  }
  .stores {
    display: flex;
    justify-content: space-evenly;
  }
}
</style>

父组件需要将动态显示内容包裹在 <template> 标签内,且在 <template> 标签内指定插槽名称,格式:v-slot:插槽名称,简写:#插槽名称。因为已通过插槽名称指定内容显示区域,所以 <template> 标签顺序不要求与组件定义的插槽顺序保持一致。

3> 执行命令 npm run dev 启动应用,浏览器访问:http://localhost:5173/
在这里插入图片描述

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

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

相关文章

纯技术手段实现内网穿透,免注册免收费

纯技术手段实现内网穿透&#xff0c;免注册免收费 一、内网穿透二、方法分类2.1 基于隧道协议的内网穿透2.2 基于反向代理的内网穿透2.3 基于SSH的内网穿透具体工具的分类如下&#xff1a;基于隧道协议基于反向代理基于SSH 三、本文方法四、具体操作4.1 安装服务端4.2 安装客户…

【Linux 网络】链路层

文章目录 链路层1 以太网1.1 以太网帧格式1.2 MAC地址1.3 MTU 2. ARP协议2.1 ARP协议的作用2.2 ARP数据报格式2.3 ARP的流程 其他协议3. DNS协议3.1 域名3.2 输入URL后的事情 4. ICMP协议4.1 ICMP 功能都有啥&#xff1f;4.2 基于ICMP的命令ping命令 5. NAT协议5.1 NAT技术背景…

android13关机按钮 去掉长按事件 去掉启动到安全模式 删除关机长按

总纲 android13 rom 开发总纲说明 目录 1.前言 2.界面效果 3.问题分析 4.代码修改 5.编译替换运行 6.彩蛋 1.前言 在Android操作系统中,关机按钮通常具有多种功能,包括短按关机、长按启动语音助手或重启设备等。在某些情况下,用户或设备管理员可能希望自定义关机按…

爬虫中常见的加密算法Base64伪加密,MD5加密【DES/AES/RSA/SHA/HMAC】及其代码实现(一)

目录 基础常识 Base64伪加密 python代码实现 摘要算法 1. MD5 1.1 JavaScript 实现 1.2 Python 实现 2. SHA 2.1 JavaScript 实现 2.2 Python 实现 2.3 sha系列特征 3. HMAC 3.1 JavaScript 实现 3.2 Python 实现 对称加密 一. 常见算法归纳 1. 工作模式归纳 …

码农职场:一本专为IT行业求职者量身定制的指南

目录 写在前面 推荐图书 推荐理由 写在后面 写在前面 本期博主给大家推荐一本专为IT行业求职者量身定制的指南&#xff1a;《码农职场》。 推荐图书 https://item.jd.com/14716160.html 内容简介 这是一本专为广大IT 行业求职者量身定制的指南&#xff0c;提供了从职前…

使用Python实现栅格划分(渔网)

在QGIS中&#xff0c;“渔网”&#xff08;Fishnet&#xff09;是指一种创建规则网格&#xff08;通常是矩形或正方形&#xff09;的工具&#xff0c;这些网格可以用于空间数据的采样、分区或作为其他地理空间分析的基础。渔网工具可以生成一个由多边形组成的图层&#xff0c;每…

文件解析漏洞—IIS解析漏洞—IIS7.X

在IIS7.0和IIS7.5版本下也存在解析漏洞&#xff0c;在默认Fast-CGI开启状况下&#xff0c;在一个文件路径/xx.jpg后面加上/xx.php会将 “/xx.jpg/xx.php” 解析为 php 文件 利用条件 php.ini里的cgi.fix_pathinfo1 开启IIS7在Fast-CGI运行模式下 在 phpstudy2018 根目录创建…

4、postgresql拓展表空间

base是数据保存目录&#xff0c; OID&#xff1a;对象标识符&#xff0c;无符号4字节整数&#xff0c; 数据库的oid在pg_database中&#xff0c;表&#xff0c;索引&#xff0c;序列等OID存储在pg_class中 表空间&#xff1a;pg最大的逻辑存储单元&#xff0c;表索引数据库都…

Linux安装Zabbix7.0并且使用外置Mysql数据库

MySQL 数据库服务版本。必须至少为 8.00.30 # rpm -Uvh https://repo.zabbix.com/zabbix/7.0/alma/9/x86_64/zabbix-release-7.0-5.el9.noarch.rpm # dnf clean all #安装zabbix # dnf install zabbix-server-mysql zabbix-web-mysql zabbix-nginx-conf zabbix-sql-scripts za…

【一图学技术】6.反向代理 vs API网关 vs 负载均衡的原理和使用场景

反向代理 vs API网关 vs 负载均衡 一、概念 ​ &#x1f30f;反向代理&#xff08;Reverse Proxy&#xff09;是一种位于服务器和客户端之间的代理服务器。 ​ 它接收来自客户端的请求&#xff0c;并将其转发给后端服务器&#xff0c;然后将后端服务器的响应返回给客户端。客…

dfs,CF 196B - Infinite Maze

一、题目 1、题目描述 2、输入输出 2.1输入 2.2输出 3、原题链接 https://codeforces.com/problemset/problem/196/B 二、解题报告 1、思路分析 考虑如何判断一条路径可以无限走&#xff1f; 我们对朴素的网格dfs改进&#xff0c;改进为可以dfs网格外的区域 如果存在某个…

Go语言加Vue3零基础入门全栈班10 Go语言+gRPC用户微服务项目实战 2024年07月31日 课程笔记

概述 如果您没有Golang的基础&#xff0c;应该学习如下前置课程。 Golang零基础入门Golang面向对象编程Go Web 基础Go语言开发REST API接口_20240728Go语言操作MySQL开发用户管理系统API教程_20240729Redis零基础快速入门_20231227GoRedis开发用户管理系统API实战_20240730Mo…

大模型下的视频理解video understanding

数据集 Learning Video Context as Interleaved Multimodal Sequences Motivation&#xff1a; 针对Narrative videos, like movie clips, TV series, etc.&#xff1a;因为比较复杂 most top-performing video perception models 都是研究那种原子动作or人or物 understandin…

C++ 布隆过滤器

1. 布隆过滤器提出 我们在使用新闻客户端看新闻时&#xff0c;它会给我们不停地推荐新的内容&#xff0c;它每次推荐时要去重&#xff0c;去掉 那些已经看过的内容。问题来了&#xff0c;新闻客户端推荐系统如何实现推送去重的&#xff1f; 用服务器记录了用 户看过的所有历史…

OpenStack——存储服务

存储侧&#xff1a; 块存储 文件存储 对象存储 存储简介 特点&#xff1a; 1、OS盘只能使用块存储 2、不能实现共享【不能解决两个主机同时去读写同一个block的问题】 3、性能最优 filesystem——文件存储 VIMS&#xff1a;高可用文件系统 ——提供了锁机制 对象存储 ——解…

MySQL搭建主从复制和读写分离(数据库管理与高可用)

集群&#xff1a; 高可用&#xff1b; 负载均衡&#xff1b; 高性能 1、MySQL主库在事务提交时把数据变更&#xff08;insert、delet、update&#xff09;作为事件日志记录在二进制日志表&#xff08;binlog&#xff09;里面。 2、主库上有一个工作线程 binlog dump thread…

蓝桥杯 DNA序列修正

今天再刷蓝桥的题目时&#xff0c;发现这道题目的第二种更为简洁的做法&#xff1b; 首先题目描述如下&#xff1a; 样例输入 5 ACGTG ACGTC 样例输出 2 对于这道题目&#xff0c;我们想的是用两个数组将其分别存储下来&#xff0c;然后再根据A-T、G-C的配对关系将数组二&a…

【C语言】堆排序

堆排序即利用堆的思想来进行排序&#xff0c;总共分为两个步骤&#xff1a; 1. 建堆 升序&#xff1a;建大堆 降序&#xff1a;建小堆 原因分析&#xff1a; 若升序建小堆时间复杂度是O(N^2) 升序建大堆&#xff0c;时间复杂度O&#xff08;N*logN&#xff09; 所以升序建大堆…

记一次对HTB:Carpediem的渗透测试

信息收集 端口扫描 通过nmap对靶机端口进行探测&#xff0c;发现存在22和80端口。 访问web页面。发现是一个静态页面&#xff0c;没有可利用的部分。 目录扫描 子域枚举 通过对域名进行fuzz子域名&#xff0c;发现存在portal一级域名。 将它加入/etc/hosts&#xff0c;访问之…