(vue2).sync修饰符、ref和$refs、$nextTick、自定义指令、插槽

news/2023/12/9 2:55:21

.sync修饰符 实现子组件和父组件数据的双向绑定 ,简化代码

prop属性名,可以自定义,非固定value

本质:属性名和@update:属性名的合写

<BaseDialog :value="isShow" @update="isShow=$event">
//等价于
<BaseDialog v-model="isShow=$event">
<BaseDialog :visible="isShow" @update:visible="isShow=$event">
//等价于
<BaseDialog :visible.sync="isShow">

变化:

1v-model  ->  :自定义属性.sync

2子组件向父传值 的事件名'update:自定义属性'

ref和$refs

查找范围:当前组件内

Vue异步更新(提升性能)、$nextTick

this.$nextTick(()=>{this.$refs.inp.focus()
})

自定义指令 封装一些dom操作

全局注册:main.js中

Vue.directive('focus',{"inserted"(el){el.focus()}
})

局部注册:组件内部

directives:{"指令名":{inserted(){el.focus()}}
}

 v-loading指令封装

分析:

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

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

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

实现:1准备一个loading类,通过伪元素.loading:before{}定位(便于添加移除),设置宽高,实现蒙层

2添加loading类v-loading="isLoading",封装loading指令

inserted(el,binding){bingding.value?el.classList.add('loading'):el.classList.remove('loading')},update(el,binding){bingding.value?el.classList.add('loading'):el.classList.remove('loading')}

插槽 让组件内部的一些结果支持自定义

组件内需要定制的结构部分用<slot name="header">默认展示内容</slot>占位

使用组件时,<Mydialog #header>传入的内容</Mydialog>

v-slot:插槽名 = #header

插槽上可以绑定数据,给slot标签,以添加属性的方式传值

<slot :id="item.id" msg="测试文本"></slot>
<template #default="obj">
//默认插槽名为default,所有被添加的属性,都会被收集到一个obj对象中<button @click="del(obj.id)">删除</button>
</template>


http://www.ppmy.cn/news/1109941.html

相关文章

Android动态片段

之前创建的片段都是静态的。一旦显示片段&#xff0c;片段的内容就不能改变了。尽管可以用一个新实例完全取代所显示的片段&#xff0c;但是并不能更新片段本身的内容。 之前已经创建过一个基础秒表应用&#xff0c;具体代码https://github.com/MADMAX110/Stopwatch。我们将这个…

Python语言概述

​ 视频版教程 Python3零基础7天入门实战视频教程 Python作为一门非常流行的高级编程语言&#xff0c;自从22年开始&#xff0c;TIOBE编程语言排行榜Python一直排第一。 Python简洁高效&#xff0c;丰富的应用场景&#xff0c;受到广大程序员&#xff0c;科研工作者的喜爱。 …

OpenCV(四十二):Harris角点检测

1.Harris角点介绍 什么是角点&#xff1f; 角点指的是两条边的交点&#xff0c;图中红色圈起来的点就是角点。 Harris角点检测原理&#xff1a;首先定义一个矩形区域&#xff0c;然后将这个矩形区域放置在我的图像中&#xff0c;求取这个区域内所有的像素值之和&#xff0c;之…

第37章_瑞萨MCU零基础入门系列教程之DAC数模转换模块

本教程基于韦东山百问网出的 DShanMCU-RA6M5开发板 进行编写&#xff0c;需要的同学可以在这里获取&#xff1a; https://item.taobao.com/item.htm?id728461040949 配套资料获取&#xff1a;https://renesas-docs.100ask.net 瑞萨MCU零基础入门系列教程汇总&#xff1a; ht…

unity 相机围绕物体旋转,并且有Y轴角度限制

unity 相机围绕物体旋转&#xff0c;并且有Y轴角度限制&#xff0c;可通过parameters.offset 修改使目标物不在画面中心 using UnityEngine; using System.Collections; using System.Collections.Generic; using UnityEngine.EventSystems; using UnityEngine.UI; public cl…

vite和webpack的区别

vite和webpack的区别 1、前言2、Webpack2.1 Webpack简述2.2 Webpack常用插件 3、Vite3.1 Vite简述3.2 Vite插件推荐 4、区别4.1 开发模式不同4.2 打包效率不同4.3 插件生态不同4.4 配置复杂度不同4.5 热更新机制不同 5、总结 1、前言 Webpack和Vite是现代前端开发中非常重要的…

【操作系统】进程的通信IPC

进程通信是指进程之间的信息交换。 低级通信方式&#xff1a;PV操作 高级通信方式&#xff1a;1.共享存储2.消息传递3.管道通信 共享存储 低级数据结构共享&#xff0c;高级存储区共享。 对共享空间进行读写操作时&#xff0c;需要用到互斥工具。 消息传递 利用发送消息和…

Packet Tracer中交换机的配置及Lab2实验

交换机是计算机网络中的一种网络设备&#xff0c;用于在局域网内传输和转发数据包。它具有数据包转发、数据包过滤、VLAN划分和端口管理等功能&#xff0c;能够实现高速、可靠和安全的数据传输&#xff0c;并支持网络的管理和控制。交换机在网络中发挥着连接终端设备和实现数据…

C#获取屏幕的分辨率、工作区分辨率

运行结果如下; 由于屏幕的任务栏在侧面所以屏幕宽度变化。 代码如下 private void Form1_Load(object sender, EventArgs e){int SH Screen.PrimaryScreen.Bounds.Height; //1080int SW Screen.PrimaryScreen.Bounds.Width; //1920System.Drawing.Rectangle rec Screen.Get…

又一重磅利好来袭!Zebec Payroll 集成至 Nautilus Chain 主网

流支付协议 Zebec Protocol 正在积极的拓展自身生态&#xff0c;随着此前其全新路线图的发布&#xff0c;揭示了该生态从 Web3 世界向 Web2 世界跨越的决心。根据其最新路线图&#xff0c;Zebec Protocol 正在从最初构建在 Solana 上的流支付协议&#xff0c;拓展为囊括模块化公…

朋友圈大佬都去读研了,这份备考书单我码住了(文末赠书)

朋友圈大佬都去读研了&#xff0c;这份备考书单我码住了 1、《数据结构与算法分析》2、《计算机网络&#xff1a;自顶向下方法》3、《现代操作系统》4、《深入理解计算机系统》5、《概率论基础教程&#xff08;原书第10版》6、《线性代数&#xff08;原书第10版&#xff09;》7…

【Android知识笔记】进程通信(一)

一、Android Framework 用到了哪些 IPC 方式 Linux 的 IPC 方式有: 管道Socket共享内存信号信号量消息队列管道通信 管道是基于pipefs文件系统实现的,也就是多个进程通过对同一个文件进行读写来实现进程间通信。半双工,单向的,通过 pipe(fds) 系统函数调用可得到一对文件描…

LeetCode刷题笔记【33】:动态规划专题-5(最后一块石头的重量 II、目标和、一和零)

文章目录 前置知识1049. 最后一块石头的重量 II题目描述解题思路代码 494. 目标和题目描述用回溯算法转换为背包问题动态规划 474.一和零题目描述解题思路代码 总结 前置知识 今天是动态规划专题的第5篇, 也是背包问题的第2篇. 所以本文和动态规划专题的1~3弱相关, 和上一篇, …

vue基础知识十:Vue中组件和插件有什么区别?

一、组件是什么 回顾以前对组件的定义&#xff1a; 组件就是把图形、非图形的各种逻辑均抽象为一个统一的概念&#xff08;组件&#xff09;来实现开发的模式&#xff0c;在Vue中每一个.vue文件都可以视为一个组件 组件的优势 降低整个系统的耦合度&#xff0c;在保持接口不…

UWB芯片DW3000之PDOA测向实现源码

介绍 DW3000芯片的双天线端口特性可以测量无线输入信号的相位。当与天线响应的信息相结合时,这些信息可以用来帮助确定到达的方向和传输的位置。 根据设备的不同,将有一个或两个天线端口。具有两个天线端口的设备称为PDoA部件,而其他是非PDoA部件(见表1)。当涉及到到达相位…

000_差分信号

1.什么是差分信号 差分信号又叫做差模信号&#xff0c;使用差分信号传输时&#xff0c;需要2根信号线&#xff0c;这2根信号线的振幅相等&#xff0c;相位相反&#xff0c;通过2根信号线的电压差值来表示逻辑0和逻辑1。 差分信号表示逻辑值如下图&#xff1a; 2.差分信号的特…

免费,开源,可批量的离线图片文字提取软件OCR

Umi-OCR 文字识别工具 免费&#xff0c;开源&#xff0c;可批量的离线OCR软件 适用于 Windows7 x64 及以上 免费&#xff1a;本项目所有代码开源&#xff0c;完全免费。方便&#xff1a;解压即用&#xff0c;离线运行&#xff0c;无需网络。批量&#xff1a;可批量导入处理图片…

TypeScript扩展类型定义

&#x1f3ac; 岸边的风&#xff1a;个人主页 &#x1f525; 个人专栏 :《 VUE 》 《 javaScript 》 ⛺️ 生活的理想&#xff0c;就是为了理想的生活 ! 目录 什么是声明文件&#xff1f; declare 1. 声明全局变量&#xff1a; 2. 声明全局函数&#xff1a; 3. 声明全局类…

【Spring面试】二、BeanFactory与IoC容器的加载

文章目录 Q1、BeanFactory的作用是什么&#xff1f;Q2、BeanDefinition的作用是什么&#xff1f;Q3、BeanFactory和ApplicationContext有什么区别&#xff1f;Q4、BeanFactory和FactoryBean有什么区别&#xff1f;Q5、说下Spring IoC容器的加载过程&#xff08;※&#xff09;Q…

虚拟机下载与Ubuntu安装

下载VMware 进入官网资源 -> 产品下载 -> Desktop & End-User Computing选择 VMware Workstation Pro 这一栏&#xff0c;点击右边的下载产品&#xff0c;跳到新页面选择版本&#xff08;我选的是 16.0&#xff09;&#xff0c;然后点击下面对应系统的转至下载&…
最新文章