当前位置: 首页 > news >正文

Vue2.组件通信

样式冲突

写在组件中的样式默认会全局生效。容易造成多个组件之间的样式冲突问题。
可以给组件加上scoped属性,让样式只作用于当前组件。
原理:

  • 给当前组件模板的所有元素,加上一个自定义属性data-v-hash值,用以区分不同的组件。
  • CSS选择器都被添加[data-v-hash值] 属性选择器

image.png

data()函数

一个组件的data选项必须是一个函数。保证每个组件实例,维护独立的一份数据对象。
每次创建新的组件实例,都会新执行一个data函数,得到一个新对象。

通信组件解决方案

父子关系:

  • props$emit

非父子关系:

  • provideinject
  • eventbus

通用解决方案:Vuex适合复杂业务场景。

父子通信

  • 父组件通过props将数据传递给子组件
  • 子组件利用$emit通知父组件修改更新

跟Qt的信号槽机制很像。下面巩固一下v-bind:v-on@
image.png

props校验

  • 类型校验
  • 非空校验
  • 默认值
  • 自定义校验

类型校验:

props参数由数组改为对象。
参数名:参数类型

完整写法:

props: {color: {type: String,//类型required: true,//是否必填default: 'blue',//默认值validator(value) {//自定义校验逻辑if (value)return true;//true为合法}}
},

prop修改

prop传过来的数据,不能直接改。
单向数据流:父组件的prop更新,回单向向下流动,影响子组件。

eventBus事件总线

非父子组件之间,进行简易消息传递。
复杂场景同Vuex。

  1. 创建一个都能访问到的事件总线(空Vue实例):
  2. 接收方监听Bus实例事件:.$on()
  3. 发送方出发Bus实例事件:.$emit()

provide&inject

跨层级共享数据

  provide() {return {//普通类型,非响应式color: this.color,//复杂类型,响应式userInfo: this.userInfo}},inject: ['color', 'userInfo'],

v-model原理

原理:v-model是一个语法糖。输入框中时,是value属性和input属性的合写。

  • 数据变,视图跟着变::value
  • 视图变,数据跟着变:@input

$event用于在模板中,获取事件形参。
image.png

表单组件封装

父传子:父组件props传递,需要拆解v-model,因为props传入的数据不允许被修改。
子传父:监听输入,子传父传值给父组件修改。
image.png

v- model简化代码封装

  • 子组件中:props通过value接收,事件触发input
  • 父组件中:v-model给组件直接绑定数据(:value+@input)。

相关文档:https://cn.vuejs.org/guide/components/v-model.html

.sync修饰符

作用:子组件与父组件数据的双向绑定,简化代码。
特点:prop属性名,可以自定义,非固定为value
场景:封装弹窗类基础组件,visible属性 true显示,false隐藏。
本质::属性名@update:属性名的合写。
父组件命名方式::属性名.sync=""
子组件发送信号:this.$emit('@update:属性名',属性值)

相关文章:

Vue2.组件通信

样式冲突 写在组件中的样式默认会全局生效。容易造成多个组件之间的样式冲突问题。 可以给组件加上scoped属性,让样式只作用于当前组件。 原理: 给当前组件模板的所有元素,加上一个自定义属性data-v-hash值,用以区分不同的组件。…...

CAS的超~详细介绍

什么是CAS CAS全称Compare and swap,是一种比较特殊的CPU指令. 字面意思:"比较并交换", 一个CAS涉及到以下操作: 我们假设内存中的原数据为V,旧的预期值A,需要修改的新值B. 1.比较A和V是否相等(比较) 2.如果相等,将B写入V.(交换) 3.返回操作是否成功. 伪代码 下面…...

Scott用户数据表的分析

Oracle从入门到总裁:https://blog.csdn.net/weixin_67859959/article/details/135209645 如果想要知道某个用户所有的数据表: select * from tab; 此时结果中一共返回了四张数据表,分别为部门表(dept) ,员工表(emp&a…...

网络基础学习(3):交换机

1.交换机结构 (1)网线接口和后面的电路部分加在一起称为一个端口,也就是说交换机的一个端口就相当于计算机上的一块网卡。 如果在计算机上安装多个网卡,并让网卡接收所有网络包,再安装具备交换机功能的软件&#xff0…...

【软件测试学习笔记2】用例设计方法

1.能对穷举场景设计测试点(等价法) 等价类: 说明:在所有测试数据中,具有某种共同特征的数据集合进行划分 分类:有效等价类:满足需求的数据集合 无效等价类:不满足需求的数据集合 步…...

蓝桥杯 第三场 小白入门赛

召唤神坤 有意思🤔(ikun)。虽然是第一题但也要配得上神坤的身份。 思路1 枚举分母,选择一个数据结构来选出分母两侧最大的两个数做分子。2s常数大些也无碍。我选择好写的ST表 思路2 写两个 d p dp dp 分别表示 1 1 1 到 i…...

网络安全等级保护测评规划与设计

笔者单位网络结构日益复杂,应用不断增多,使信息系统面临更多的风险。同时,网络攻防技术发展迅速,攻击的技术门槛随着自动化攻击工具的应用也在不断降低,勒索病毒等未知威胁也开始泛滥。基于此,笔者单位拟进…...

Error: Cannot find module ‘vue-template-compiler‘ 问题解决

启动Vuepress项目时报了如下错误:Error: Cannot find module vue-template-compiler Error: Cannot find module vue-template-compiler Require stack: - /usr/local/lib/node_modules/vuepress/node_modules/vue-loader/lib/compiler.js - /usr/local/lib/node_…...

华为认证云计算专家(HCIE-Cloud Computing)--练习题

华为认证云计算专家(HCIE-Cloud Computing)–练习题 1.(判断题)华为云stack支持鲲鹏架构,业务可从X86过渡到鲲鹏。 正确答案:正确 2.(判断题)业务上云以后,安全方面由云服务商负责,客户自己不需要做任何防…...

【MATLAB】【数字信号处理】产生系统的单位冲激响应h(t)与H(z)零极点分布

一、实验目的与要求 产生h(t) 与H(z) 零极点分布 二、实验仪器 微机,仿真软件MATLAB 2022a 三、实验内容与测试结果 1.已知描述连续系统的微分方程为y(t)5y(t)6y(t)2x(t)8x(t) ,计算系统的单位冲激响应h(t) 程序如下: clear all; ts0;…...

实验五:动态路由配置

实验五:动态路由配置 1.RIP 配置 【实验名称】 RIP 路由协议配置 【实验目的】掌握路由器 RIP 路由协议的基本配置 【实验设备】路由器( 2 台)、计算机( 2 台)、配置电缆( 1 根)、 V…...

苍穹外卖学习----出错记录

1.微信开发者工具遇到的问题: 1.1appid消失报错: {errMsg: login:fail 系统错误,错误码:41002,appid missing [20240112 16:44:02][undefined]} 1.2解决方式: appid可在微信开发者官网 登录账号后在开发栏 找到 复制后按以下步骤粘贴即…...

如何实现图片压缩

文章目录 1、canvas实现图片压缩2、其他 1、canvas实现图片压缩 canvas 实现图片压缩,主要是使用 canvas 的drawImage 方法 具体思路 拿到用户上传的文件转成base64创建一个 Image,主要是获取到这个图片的宽度和高度创建一个 2D 的画布,画布…...

机器学习算法实战案例:时间序列数据最全的预处理方法总结

文章目录 1 缺失值处理1.1 统计缺失值1.2 删除缺失值1.3 指定值填充1.4 均值/中位数/众数填充1.5 前后项填充 2 异常值处理2.1 3σ原则分析2.2 箱型图分析 3 重复值处理3.1 重复值计数3.2 drop_duplicates重复值处理 3 数据归一化/标准化3.1 0-1标准化3.2 Z-score标准化 技术交…...

MongoDB高级集群架构设计

两地三中心集群架构设计 容灾级别 RPO & RTO RPO(Recovery Point Objective):即数据恢复点目标,主要指的是业务系统所能容忍的数据丢失量。RTO(Recovery Time Objective):即恢复时间目标&…...

C++中JSON与string格式互转

1、JSON-》string 操作步骤&#xff1a; 1、在C中新建一个json对象并赋值&#xff0c;然后将其转给char *data。 2、在使用 #include <json.h> 头文件时&#xff0c;通常是使用第三方库 jsoncpp。由于它不是标准库的一部分&#xff0c;所以需要从官网http://jsoncpp.sou…...

2023一带一路暨金砖国家技能发展与技术创新大赛 【企业信息系统安全赛项】国内赛竞赛样题

2023一带一路暨金砖国家技能发展与技术创新大赛 【企业信息系统安全赛项】国内赛竞赛样题 2023一带一路暨金砖国家技能发展与技术创新大赛 【企业信息系统安全赛项】国内赛竞赛样题第一阶段&#xff1a; CTF 夺旗项目1. CTF 夺旗任务一 命令注入任务二 SQL 注入 项目2. 序列化漏…...

【BBuf的CUDA笔记】十二,LayerNorm/RMSNorm的重计算实现

带注释版本的实现被写到了这里&#xff1a;https://github.com/BBuf/how-to-optim-algorithm-in-cuda/tree/master/apex 由于有很多个人理解&#xff0c;读者可配合当前文章谨慎理解。 0x0. 背景 我也是偶然在知乎的一个问题下看到这个问题&#xff0c;大概就是说在使用apex的…...

安装Mac提示安装无法继续,因为安装器已损坏

目录 事件起因报错原因 事件起因 有两台电脑&#xff0c;由于电脑1下载镜像文件很快&#xff0c;于是我先用电脑1下载这个大文件&#xff0c;然后安装openresty&#xff0c;电脑2用http链接下载这个大文件。电脑2安装中途就报安装无法继续,因为安装器已损坏。 报错原因 不知…...

脚本编程游戏引擎会遇到哪些问题

在游戏开发中&#xff0c;脚本编程已经成为了一种非常常见的方式&#xff0c;用来实现游戏逻辑和功能。但是脚本编程游戏引擎也可能会面临一些挑战和问题。下面简单的探讨一下都会遇到哪些问题&#xff0c;并且该如果做。 性能问题 脚本语言通常需要运行时解释执行&#xff0…...

什么软件可以做报表?

数据报表&#xff0c;是商业领域中不可或缺的一部分&#xff0c;它通过表格、图表等形式&#xff0c;将复杂的数据进行整理、分析并呈现出来&#xff0c;帮助用户更好地理解数据的趋势和关系。数据报表不仅展示了业务现状和趋势&#xff0c;还支持多种数据分析和挖掘功能&#…...

数据结构学习 jz39 数组中出现次数超过一半的数字

关键词&#xff1a;排序 摩尔投票法 摩尔投票法没学过所以没有想到&#xff0c;其他的都自己想。 题目&#xff1a;库存管理 II 方法一&#xff1a; 思路&#xff1a; 排序然后取中间值。因为超过一半所以必定在中间值是我们要的结果。 复杂度计算&#xff1a; 时间复杂度…...

基于Linux的Flappy bird游戏开发

项目介绍 主要是使用C语言实现&#xff0c;开启C项目之旅。 复习巩固C语言、培养做项目的思维。 功能&#xff1a; 按下空格键小鸟上升&#xff0c;不按下落&#xff1b; 显示小鸟需要穿过的管道&#xff1b; 小鸟自动向右飞行&#xff1b;&#xff08;管道自动左移和创建&a…...

排序算法6---快速排序(非递归)(C)

回顾递归的快速排序&#xff0c;都是先找到key中间值&#xff0c;然后递归左区间&#xff0c;右区间。 那么是否可以实现非递归的快排呢&#xff1f;答案是对的&#xff0c;这里需要借助数据结构的栈。将右区间左区间压栈&#xff08;后进先出&#xff09;&#xff0c;然后取出…...

【Verilog】期末复习——设计带异步清零且高电平有效的4位循环移位寄存器

系列文章 数值&#xff08;整数&#xff0c;实数&#xff0c;字符串&#xff09;与数据类型&#xff08;wire、reg、mem、parameter&#xff09; 运算符 数据流建模 行为级建模 结构化建模 组合电路的设计和时序电路的设计 有限状态机的定义和分类 期末复习——数字逻辑电路分…...

银行网络安全实战对抗体系建设实践

文章目录 前言一、传统攻防演练面临的瓶颈与挑战&#xff08;一&#xff09;银行成熟的网络安全防护体系1、缺少金融特色的演练场景设计2、资产测绘手段与防护体系不适配3、效果评价体系缺少演练过程维度相关指标 二、实战对抗体系建设的创新实践&#xff08;一&#xff09;建立…...

SwiftUI之深入解析Alignment Guides的超实用实战教程

一、Alignment Guide 简介 Alignment guides 是一个强大的布局工具&#xff0c;但通常未被充分利用。在很多情况下&#xff0c;它们可以帮助我们避免更复杂的选项&#xff0c;比如锚点偏好。如下所示&#xff0c;对对齐的更改也可以自动&#xff08;并且容易地&#xff09;动画…...

java获取视频文件的编解码器

java获取视频文件的编解码器 引入jar包&#xff1a; <dependency><groupId>org.bytedeco</groupId><artifactId>javacv-platform</artifactId><version>1.5.9</version></dependency>测试类 package com.jd.brand.approve.…...

动态规划Day06(完全背包)

完全背包 有N件物品和一个最多能背重量为W的背包。第i件物品的重量是weight[i]&#xff0c;得到的价值是value[i] 。每件物品都有无限个&#xff08;也就是可以放入背包多次&#xff09;&#xff0c;求解将哪些物品装入背包里物品价值总和最大。 完全背包和01背包问题唯一不同…...

selenium之框架之窗口

...

做网站 商标分类/疫情防控数据

Java工程开发师这个岗位炙手可热&#xff0c;市场需求多&#xff0c;学习Java的人也不少&#xff0c;所以IT企业与求职者的选择都比较多。那么IT企业在与应聘者面试时都会问到哪些问题呢&#xff0c;下面小编就为求职者们奉上大型IT企业必问的六个Java面试问题。 Java技术题&a…...

从网站建设到网站运营/简述网络营销的方法

pytorch3D和blender选择标准各自优缺点PyTorch3D的优点PyTorch3D的缺点Blender的优点Blender的缺点选择标准 选择使用PyTorch3D还是Blender应该根据以下几个标准进行评估&#xff1a; 任务需求&#xff1a;确定需要解决的具体问题和任务。如果任务需要进行三维建模和动画&…...

做阿里巴巴网站费用/新人学会seo

PHP-Casbin是一个强大的、高效的开源访问控制框架&#xff0c;它支持基于各种访问控制模型(RBAC ABAC ACL)的权限管理。ABAC 是 基于属性的访问控制&#xff0c;可以使用主体、客体或动作的属性&#xff0c;而不是字符串本身来控制访问。推荐&#xff1a;《PHP教程》ABAC 的官方…...

logo查询网站/成都网站关键词推广优化

open***提供了证书验证和密码验证两种验证方式&#xff0c;这里来具体描述下密码验证的配置方法。一&#xff1a;修改open***服务端配置&#xff0c;在文件末尾添加如下配置&#xff1a;# vim /opt/apps/open***/etc/server.conf auth-user-pass-verify /opt/apps/open***/etc…...

自己做的网站怎么发布/工具seo

2020年高考已经落下帷幕&#xff0c;全国各地高考试题依然是大家热议的话题&#xff0c;特别是今年的高考数学题&#xff0c;瞬间冲上微博热搜。今年高考数学题&#xff0c;再次出现编程题&#xff01;高考&#xff0c;已经开始考“编程”了&#xff01;2020年高考再现编程题20…...

高品质的网站开发公/百度风云榜各年度小说排行榜

养成好习惯&#xff0c;点个赞再走 有问题&#xff0c;欢迎私信、评论&#xff0c;我看到都会回复的 文章目录打开注册表编辑器备份部分注册表部分注册表的恢复导出整个注册表整个注册表的恢复未将所有数据都成功写入到注册表中。某些项是由系统或其他进程打开的&#xff0c;或…...