前端(vue)学习笔记(CLASS 5):自定义指令插槽路由

1、自定义指令

内置指令:内部提供的,每个指令都有自己各自独立的功能

自定义指令:自己定义的指令,可以封装一些dom操作,扩展额外功能

全局注册-语法

例如,当页面加载时,让元素获得焦点

    Vue.directive('指令名',{"insert"(el) {el.focus()}})

insert指的是当指令所绑定的元素被添加到页面中时会自动调用

该代码写在main.js文件中

局部组册-语法

    directives: {"指令名": {inserted() {else.foucs()} }}

局部注册的代码写在组件内的script中

使用的时候,和其他指令一样,v-指令名

* 自定义指令-指令的值

语法:在绑定指令时,可以通过“等号”的形式为指令绑定具体的参数值

通过binding.value可以拿到指令值,指令值修改会触发update函数

Vue.directive('指令名',{insert(el,binding) {//el为绑定的元素,binding.value获取等号后的值},update(el,binding) {//同样的逻辑,用于实时更新}
* 自定义指令-v-loading封装

场景:实际开发过程中,发送请求需要时间,在请求的数据未回来时,页面会处于空白状态

需求:封装一个v-loading指令,实现加载中的效果

分析:

1、本质loading效果就是一个蒙层,盖在盒子上

2、数据请求中,开启loading状态,添加蒙层

3、数据请求完毕,关闭loading状态,移除蒙层

实现:

1、准备一个loading类,通过伪元素定位,设置宽高,实现蒙层

2、开启关闭loading状态,本质只需添加移除类即可

3、结合自定义指令的语法进行封装复用

2、插槽

作用:让一些组件内部的一些结构支持自定义

分成后备内容插槽,具名插槽

插槽基本语法:

1、组件内需要定制的结构部分,改用<slot></slot>占位

2、使用组件时,<MyDialog></MyDialog>(自定义的组件)标签内部,传入结构替换slot

* 插槽-后备内容(默认值)

通过插槽完成了内容的定制,传什么就显示什么,但是如果不传,则是空白

插槽后备内容:封装组件时,可以为预留的<slot>插槽提供后备内容(默认内容)

语法:在该标签内,放置内容,作为默认内容

* 插槽-具名插槽

需求:一个组件内有多处结构,需要外部传入标签,进行定制

具名插槽语法:

1、多个slot使用name属性区分名字

2、template配合v-slot:对应属性值 来分发对应标签

其中的v-slot可以直接简写为#属性值

* 插槽-作用域插槽

作用域插槽:定义slot插槽的同时,是可以传值的。给插槽绑定数据,将来使用组件时可以用

基本步骤:

1、给slot标签,以添加属性的方式传值

<slot :id="item.id" msg="测试文本"></slot>

2、所有被添加的属性,都会被收集到一个对象里

3、在template中,通过#插槽名=“obj”接收,默认插槽名为default

3、路由入门

单页应用程序:SPA-Single Page Application

单页面应用:所有功能在一个html页面上实现

单页面之所以开发效率高,性能好,用户体验好,最大原因是页面按需更新

要按需更新,首先就要明确:访问路径和组件的对应关系

访问路径和组件的对应关系由路由确定

vue中的路由:路径和组件之间的映射关系

1、VueRouter

作用:修改地址栏路径时,切换显示匹配的组件

说明:Vue官方的一个路由插件,是一个第三方包

VueRouter的使用(5+2)

5个基础步骤(固定)

1、下载:下载VueRouter模块到当前工程

2、引入

import VueRouter from 'vue-router'

3、安装注册

Vue.use(VueRouter)

4、创建路由对象

const router=new VueRouter()

5、注入,将路由对象注入到new Vue实例中,建立联系

new Vue({render: h => h(App),router
}).$mount('#app')

以上操作都在main.js中完成

2个核心步骤

1、创建需要的组件(views目录),配置路由规则

例如:

import Find from './views/Find.vue'
import My from './views/My.vue'
const router =new VueRouter({routes: [{path:'/find',component: Find},{path:'/my',component: My}]
})

2、配置导航,配置路由出口(路径匹配的组件显示的位置)

例如:

    <a href="#/find"></a><a href="#/my"></a>

利用<router-view></router-view>进行视图的展示

2、组件存放目录问题

注意:.vue文件本质无区别

路径相关的组件,需要放置在views目录中

组件分类:页面组件与复用组件

一般页面组件放置在views目录中,而复用组件放置在components目录中

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

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

相关文章

【redis】事务详解,相关命令multi、exec、discard 与 watch 的原理

文章目录 什么是事务原子性一致性持久性隔离性 优势与 MySQL 对比用处 事务相关命令开启事务——MULTI执行事务——EXEC放弃当前事务——DISCARD监控某个 key——WATCH作用场景使用方法实现原理 事务总结 什么是事务 MySQL 事务&#xff1a; 原子性&#xff1a;把多个操作&am…

【Java SE】单例设计模式

参考笔记&#xff1a;深入理解Java设计模式&#xff1a;单例模式及其饿汉式与懒汉式的对比,-CSDN博客 目录 1.什么是设计模式 2.经典设计模式 3.单例设计模式&#xff08;static属性/方法经典使用场景 &#xff09; 3.1 饿汉式单例模式 3.2 懒汉式单例模式 4.补充 1.什么…

【day2】数据结构刷题 栈

一 有效的括号 给定一个只包括 (&#xff0c;)&#xff0c;{&#xff0c;}&#xff0c;[&#xff0c;] 的字符串 s &#xff0c;判断字符串是否有效。 有效字符串需满足&#xff1a; 左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。每个右括号都有一个对应的…

蓝桥杯 劲舞团

问题描述 小蓝最近迷上了一款名为 “劲舞团” 的游戏。 在游戏中&#xff0c;只要按照给出的键位提示依次按出对应的键位&#xff0c;游戏人物便可以跟随节奏跳舞。 对于连续的 K 次正确敲击&#xff0c;如果任意连续两次敲击之间的时间间隔都小于等于 1 秒&#xff08;即 1…

数据库数值函数详解

各类资料学习下载合集 ​​https://pan.quark.cn/s/8c91ccb5a474​​ 数值函数是数据库中用于处理数值数据的函数,可以用于执行各种数学运算、统计计算等。数值函数在数据分析及处理时非常重要,能够帮助我们进行数据的聚合、计算和转换。在本篇博客中,我们将详细介绍常用的…

关于金融开发领域的一些专业知识总结

目录 1. 交易生命周期 1.1 证券交易所 1.1.1 交易前 1) 订单生成&#xff08;Order Generation&#xff09; 2) 订单管理&#xff08;Order Management&#xff09; 1.1.2 交易执行 3) 交易匹配&#xff08;Trade Matching&#xff09; 1.1.3 交易后 4) 交易确认&…

Leetcode 3495. Minimum Operations to Make Array Elements Zero

Leetcode 3495. Minimum Operations to Make Array Elements Zero 1. 解题思路2. 代码实现 题目链接&#xff1a;3495. Minimum Operations to Make Array Elements Zero 1. 解题思路 这一题的话核心就是统计对任意自然数 n n n&#xff0c;从 1 1 1到 n n n当中所有的数字对…

Vue 3 + TypeScript 实现视频播放与字幕功能:集成西瓜播放器 XGPlayer

文章目录 1. 前言&#xff1a;视频播放器的重要性2. 准备工作2.1 安装 Vue 3 项目2.2 安装 XGPlayer 和相关依赖 3. 实现视频播放3.1 初始化 XGPlayer 4. 添加字幕功能4.1 配置字幕 4.2 字幕文件格式5. 增加交互性完整的代码&#xff0c;仅供参考6. 总结 在现代 Web 开发中&…

MacOS安装 nextcloud 的 Virtual File System

需求 在Mac上安装next cloud实现类似 OneDrive 那样&#xff0c;文件直接保存在服务器&#xff0c;需要再下载到本地。 方法 在 官网下载Download for desktop&#xff0c;注意要下对版本&#xff0c;千万别下 Mac OS默认的那个。 安装了登录在配置过程中千万不要设置任何同…

.NET 9 彻底改变了 API 文档:从 Swashbuckle(Swagger) 到 Scalar

示例代码下载&#xff1a;https://download.csdn.net/download/hefeng_aspnet/90404652 摘要 API 文档是现代软件开发的支柱。随着 .NET 9 从 Swashbuckle 转向 Microsoft.AspNetCore.OpenApi&#xff0c;开发人员需要新的策略来保持高效。本文探讨了这些变化&#xff0c;并介…

深入剖析Java虚拟机(JVM):从零开始掌握Java核心引擎

&#x1f4cc; 引言&#xff1a;为什么每个Java开发者都要懂JVM&#xff1f; 想象你是一名赛车手&#xff0c;Java是你的赛车&#xff0c;而JVM就是赛车的引擎。 虽然你可以不关心引擎内部构造就能开车&#xff0c;但要想在比赛中获胜&#xff0c;必须了解引擎如何工作&#…

怎么连接linux服务器的桌面

一、使用 VNC&#xff08;Virtual Network Computing&#xff09; 1. 服务器端配置&#xff08;Ubuntu 22.04 示例&#xff09; # 安装 VNC 服务器&#xff08;以 TigerVNC 为例&#xff09; sudo apt update sudo apt install tigervnc-standalone-server tigervnc-xorg-ext…

elasticsearch 通用笔记

文章目录 一、前言二、内容说明1、目录简介2、本文例子前提内容 三、操作内容1、设置ES为服务2、查看健康度参数解析 3、索引相关查询3.1、查询指定索引内容3.1.1、匹配查询3.1.2、精确匹配&#xff08;不尝试分词&#xff09;3.1.3、范围查询3.1.4、id查询3.1.5、通配符及前缀…

windows安装配置FFmpeg教程

1.先访问官网&#xff1a;https://www.gyan.dev/ffmpeg/builds/ 2.选择安装包Windows builds from gyan.dev 3. 下滑找到release bulids部分&#xff0c;选择ffmpeg-7.0.2-essentials_build.zip 4. 然后解压将bin目录添加path系统变量&#xff1a;\ffmpeg-7.0.2-essentials_bui…

强大的AI网站推荐(第二集)—— V0.dev

网站&#xff1a;V0.dev 号称&#xff1a;前端开发神器&#xff0c;专为开发人员和设计师设计&#xff0c;能够使用 AI 生成 React 代码 博主评价&#xff1a;生成的UI效果太强大了&#xff0c;适合需要快速创建UI原型的设计师和开发者 推荐指数&#xff1a;&#x1f31f;&…

c#知识点补充4

1.发布者订阅模式 发布者 订阅者 俩者直接的关联使用

01、聊天与语言模型

一、简单说明模型 LLM目前有两种API提供 LanguageModel&#xff1a;接收一个a作为输入并返回一个b作为输出&#xff0c;这种是已经过时的ChatLanguageModel&#xff1a;接收多个输入&#xff0c;然后返回相应的输出 ChatLanguaggeModel是LangChain4j中LLM交互低级API&#x…

SQL的DCL,DDL,DML和DQL分别是什么

SQL&#xff08;Structured Query Language&#xff09;包括以下四种主要语言类别&#xff0c;分别用于不同的数据库操作&#xff1a; 1. DCL&#xff08;Data Control Language&#xff0c;数据控制语言&#xff09; 用于控制数据库访问权限和安全。 常见命令&#xff1a; …

spring boot maven一栏引入本地包

1、在项目跟目录下建立文件夹&#xff0c;比如libs 2、maven依赖 <dependency><groupId>com.hikvision.ga</groupId><artifactId>artemis-http-client</artifactId><version>1.1.10</version><scope>system</scope>&l…

连续型随机变量及其分布

连续型随机变量 数学公式可以看作一门精确描述事物的语言&#xff0c;比语言尤其是汉语的模糊性精确多了&#xff01;离散型数据的处理可以通过枚举和相加进行处理。而连续型数据则没有办法这样处理。我们必须要通过函数和取值区间还有微积分计算。 &#xff3b;定义1&#x…