(Vue2)非父子通信、v-model原理

非父子(类似兄弟)通信-event bus事件总线

1创建一个都能访问到的事件总线->utils/EventBus.js

import Vue from 'vue'
const Bus=new Vue()
exports default Bus

2A组件监听Bus实例的事件->components/BaseA(接收方)

注:都要导入

import Bus from '../utils/EventBus'
created(){Bus.$on('sendMsg',(msg)=>{console.log(msg)})
}

3B组件触发Bus实例的事件->components/BaseB(发布方)

clickSend(){Bus.$emit('sendMsg','你真棒!')
}

非父子(类似爷孙)通信-provide&inject:跨层级共享数据

1父组件provide提供数据

private(){return{color:this.color}
}

2子孙inject取得数据

inject:['color']

注:在vue中,单引号和双引号都可以用来定义字符串。vue官方文档推荐双引号来表示字符串,单引号来表示键值。

v-model原理:一个语法糖 

作用:数据双向绑定 

应用与输入框:value属性和input事件的合写

:value视图跟着数据变

@input数据跟着视图变

$event.target用于在模板中获取被触发事件元素

<input :value="msg" @input="msg=$event.target.value" type="text">

表单类组件封装 &v-model简化代码

表单通常封装成组件,封装成组件了就涉及组件通信

1表单类组件封装

父传子:数据是父组件props传递过来的  v-model拆解绑定数据   下拉菜单:value @change

子传父:监听输入,改变传值给父组件

<select :value="value" @change="handelChange"></select>
props:{value:string
}
methods:{handelChange(e){this.$emit('事件名',e.target.value)}
}

注:父传子的键必须为value。因为v-model就是value属性和事件的合写

2v-model简化代码

<BaseSelect :value="selected" @'事件名'="selectId=$event"></BaseSelect>
<BaseSelect v-model="selectId"></BaseSelect>

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

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

相关文章

(高频面试1)Redis缓存穿透、缓存击穿、缓存雪崩

目录 一&#xff1a;缓存数据 1.1 应用场景 1.2&#xff1a;缓存数据出现的问题 1.2.1 缓存穿透 1.2.2 解决办法 1.2.3 缓存击穿 1.2.4 解决办法 1.2.5 缓存雪崩 1.2.6 解决办法 一&#xff1a;缓存数据 1.1 应用场景 数据库查询结果缓存是一种常见的缓存应用场景&a…

科普js加密时出现的错误

当你在使用Babel解析JavaScript代码时&#xff0c;可能会遇到一个错误信息&#xff1a;“Deleting local variable in strict mode”&#xff08;在严格模式下删除本地变量&#xff09;。这个错误信息通常表示你正在尝试删除一个使用let或const关键字声明的变量。在JavaScript的…

性能测试度量指标

1-响应时间 响应时间指从用户或事务在客户端发起一个请求开始&#xff0c;到客户端接收到从服务器端返回的响应结束&#xff0c;这整个过程所消耗的时间 在性能测试实践中&#xff0c;为了使响应时间更具代表性&#xff0c;响应时间通常是指事务的平均响应时间ART 在实践中要…

redis持久化、主从和哨兵架构

一、redis持久化 1、RDB快照&#xff08;snapshot&#xff09; redis配置RDB存储模式&#xff0c;修改redis.conf文件如下配置&#xff1a; # 在300s内有100个或者以上的key被修改就会把redis中的数据持久化到dump.rdb文件中 # save 300 100# 配置数据存放目录&#xff08;现…

Idea安装使用教程~

在本文中&#xff0c;我们将提供关于如何安装 IntelliJ IDEA 的详细步骤。如果您是初学者或只是想尝试一下 IDEA&#xff0c;我们建议您下载 Community 版。如果您需要更多高级功能&#xff0c;可以选择 Ultimate 版。 步骤一&#xff1a;下载 IntelliJ IDEA 首先&#xff0c;…

【SpringCloudAlibaba】Seata分布式事务使用

文章目录 分布式事务问题示例Seata概述、官网一个典型的分布式事务过程处理过程全局GlobalTransactional分布式交易解决方案流程图 Seata安装下载修改conf目录下的application.yml配置文件dashboard demo 分布式事务问题示例 单体应用被拆分成微服务应用&#xff0c;原来的三个…

Springboot+swagger2

1.swagger配置 /*** Swagger 配置文件*/ Configuration public class SwaggerConfig {Beanpublic Docket createRestApi() {return new Docket(DocumentationType.SWAGGER_2).apiInfo(apiInfo()).select().apis(RequestHandlerSelectors.basePackage("com.swagger.two&qu…

Spring Boot @Value读不到Nacos配置中心的值。(properties配置文件)

读不到配置中心的值&#xff0c; 配置中心的配置文件名字&#xff08;Data ID的值&#xff09;要以.properties结尾。 如果是yaml&#xff0c;就以yaml命名。

LeetCode377. 组合总和 Ⅳ

377. 组合总和 Ⅳ 文章目录 [377. 组合总和 Ⅳ](https://leetcode.cn/problems/combination-sum-iv/)一、题目二、题解方法一&#xff1a;完全背包一维数组动态规划思路代码分析 方法二&#xff1a;动态规划二维数组 一、题目 给你一个由 不同 整数组成的数组 nums &#xff0…

Java8的Stream用法

Java8 API新增了一个新的抽象流Stream&#xff0c;它可以执行非常复杂的查找、过滤和映射数据等操作。使用Stream API 对集合数据进行操作&#xff0c;就类似于使用 SQL 执行的数据库查询。Stream就是把集合数据看作流&#xff0c;流在管道中传输&#xff0c;我们可在管道中进行…

Spring MVC:请求转发与请求重定向

Spring MVC 请求转发请求重定向附 请求转发 转发&#xff08; forward &#xff09;&#xff0c;指服务器接收请求后&#xff0c;从一个资源跳转到另一个资源中。请求转发是一次请求&#xff0c;不会改变浏览器的请求地址。 简单示例&#xff1a; 1.通过 String 类型的返回值…

GO语言篇之反射

GO语言篇之反射 文章目录 GO语言篇之反射前言获取变量类型获取变量值获取结构体的字段&#xff0c;方法&#xff0c;动态地修改&#xff0c;调用结构体的字段和方法创建变量缺点 前言 Go语言可以在运行期间查看自身结构&#xff0c;在运行时动态地获取结构体的信息&#xff0c…

人工智能训练?量子计算机?显卡!【为什么人工智能需要强大的显卡而不是处理器?量子计算机可以吗?】

人工智能硬件与量子计算机&#xff1a;未来的竞争与合作 人工智能&#xff08;AI&#xff09;领域的发展一直以来都与硬件技术密不可分。随着深度学习和神经网络的崛起&#xff0c;图形处理单元&#xff08;GPU&#xff09;等硬件成为了AI训练的主要工具。然而&#xff0c;量子…

spring 理解

仅供个人学习&#xff0c;部分转自路人甲&#xff0c;侵删 spring容器 1.基本概念 2.Spring Ioc 容器 3.Spring Aop 4.数据访问 5.Spring MVC 6.事务管理 7.高级特性 8.整合其他框架 9.理解原理 基本概念 spring启动流程&#xff0c;加载配置文件&#xff0c;创建…

2023年基因编辑行业研究报告

第一章 行业发展概况 1.1 定义 基因编辑&#xff08;Gene Editing&#xff09;&#xff0c;又称基因组编辑&#xff08;Genome Editing&#xff09;或基因组工程&#xff08;Genome Engineering&#xff09;&#xff0c;是一项精确的科学技术&#xff0c;可以对含有遗传信息的…

[JAVAee]Spring的基础介绍

本文章介绍了Spring大致是什么,核心的功能. Spring是什么? Spring指的是Spring Framework(Spring框架). 支持广大的开发场景,能够使应用开发变得简单. 其集成了各种工具,还实现了底层的类的实例化和生命周期的管理. 简单来说,Spring就是拥有众多工具方法的IoC容器 容器?…

常用百宝箱——日志处理

目录 前言 一、logging库 二、logging日志等级 三、logging四大组件 四、封装示例 总结 前言 日志是记录特定时间段或事件的详细信息的文件或记录。它们通过时间戳和关键词或描述符来标识事件或行动。日志可以用于许多目的&#xff0c;例如&#xff1a;故障排除、网络安全…

搭建springcloud注册中心eureka以及admin监控

写该篇文章的目的是为了以后搭建微服务的时候避免踩坑 要求&#xff1a;搭建一个eureka-server注册中心&#xff0c;再构建两个eureka-client注册上去&#xff0c;然后再搭建admin服务注册到注册中心。实现在admin后管页面可观察已注册上去的服务 前提&#xff1a;使用的spri…

Redis 初识与入门

1. 什么是Redis Redis 是一种基于内存的数据库&#xff0c;对数据的读写操作都是在内存中完成&#xff0c;因此读写速度非常快&#xff0c;常用于缓存&#xff0c;消息队列、分布式锁等场景。 Redis 提供了多种数据类型来支持不同的业务场景&#xff0c;比如 String(字符串)、…

关系的定义及表示

关系的定义及表示 1、若集合R是AA的子集&#xff0c;则称R是集合A上的二元关系&#xff0c;简称关系 例&#xff1a;A{1,2}&#xff0c; AA{<1,1>,<1,2>,<2,1>,<2,2>}&#xff0c;AA的任何一个子集都是A上的关系 如&#xff1a; R{<1,1>, &…