【vue2第十一章】v-model的原理详解 与 如何使用v-model对父子组件的value绑定 和修饰符.sync

news2024/11/27 18:45:26

v-model的原理详解

v-model的本质就是一个语法糖,实际上就是 :value="msg"@input="msg = $event.target.value" 的简写。
:value="msg" 从数据单向绑定到input框,当data数据中的msg内容一旦改变,而input框数据也随之改变。
@input="msg = $event.target.value" 是为input框绑定了input事件,内容改变则触发,而在触发时又把这个input框的value值赋值给了data数据中的msg。
在这里插入图片描述

原本使用porps和$emit实现的父子组件通信。

这下面的代码就实现了父子组件属性的双向绑定。
在这里插入图片描述
而这其中父组件中的子标签属性 :value="msg" @input="sendMsg" 是与 使用 v-model:"msg" 等价的,因为sendMsg(value){ console.log(value) this.msg = value }方法的内容是与v-model原理中的@input="msg = $event.target.value"是一模一样的意思,所以在父组件中我们可以使用以下代码来与子组件双向绑定

<!-- 结构 -->
<template>
  <div id="app">
    <MyInput v-model="msg"></MyInput>
  </div>
</template>

<!-- 行为 -->
<script>
import MyInput from './components/MyInput.vue';

export default {
  name: "App",
  data() {
    return {
      msg: "你好!vue",
    };
  },
  components:{
    MyInput
  },
};
</script>

<!-- 样式 -->
<style>
#app {
  width: 100%;
  height: 600px;
  background-color: skyblue;
  overflow: hidden;
}
</style>

而子组件则需要注意的是,使用 props:{ value:String }, 来接受父组件数据,必须是vaule:

<template>
  <input  type="text" :value="value" 
        @input="fun($event.target.value)">
</template>

<script>
export default {
    props:{
        value:String
    },![在这里插入图片描述](https://img-blog.csdnimg.cn/2ce2b0549f674812a0fc5ad9feb65559.png#pic_center)

    methods:{
        fun(e){
            this.$emit('input',e)
        }
    }
}
</script>

.sync修饰符

使用v-model有一个坏处就是,子组件接收数据的键只可以使用value props:{ value:String },而这个修饰符.sync就可以解决这个问题。
在这里插入图片描述

子组件中将修改触发方法。

<template>
  <input  type="text" :value="msg" 
        @input="fun($event.target.value)">
</template>

<script>
export default {
    props:{
        msg:String
    },
    methods:{
        fun(e){
        	//修改点update:要修改的属性名称
            this.$emit('update:msg',e)
        }
    }
}
</script>

父组件中的修改点:

<!-- 结构 -->
<template>
  <div id="app">
 	<!-- 只需修改为  :传递数据名.sync="传递数据名" -->
    <MyInput :msg.sync = "msg"></MyInput>
  </div>
</template>

<!-- 行为 -->
<script>
import MyInput from './components/MyInput.vue';

export default {
  name: "App",
  data() {
    return {
      msg: "你好!vue",
    };
  },
  components:{
    MyInput
  },
};
</script>

<!-- 样式 -->
<style>
#app {
  width: 100%;
  height: 600px;
  background-color: skyblue;
  overflow: hidden;
}
</style>

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

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

相关文章

yum 、rpm、yumdownloader、repotrack 学习笔记

1 Linux 包管理器概述 rpm的使用&#xff1a; rpm -ivh filename.rpm#这列出该packageName&#xff08;包名&#xff09;安装的所有文件列表。 rpm -ql packageName #查询已安装的该packageName的详细信息&#xff0c;包括版本、发布日期等。 rpm -qi packageName #列出该pac…

剑指 Offer 62. 圆圈中最后剩下的数字(简单)

题目&#xff1a; class Solution { public:int lastRemaining(int n, int m) {int pos 0;for(int i2;i<n;i){pos (posm)%i;}return pos;} };作者&#xff1a;想吃火锅的木易 链接&#xff1a;详细题解 来源&#xff1a;力扣&#xff08;LeetCode&#xff09;

哪些存储设备的数据需要注意,防止误删除或者格式化丢失?

以下是一些存储设备的数据要注意&#xff0c;防止误删除或者格式化丢失&#xff1a; 1.硬盘&#xff1a;存储重要数据时要备份&#xff0c;避免硬盘故障、误格式化等情况导致数据丢失。 2.USB闪存驱动器&#xff1a;在拔出USB闪存驱动器前&#xff0c;应该先进行“安全删除”…

Stable Diffuse 之 本地环境部署 WebUI 进行汉化操作

Stable Diffuse 之 本地环境部署 WebUI 进行汉化操作 目录 Stable Diffuse 之 本地环境部署 WebUI 进行汉化操作 一、简单介绍 二、汉化操作 附录&#xff1a; 一、Install from URL 中出现 Failed to connect to 127.0.0.1 port 7890: Connection refused 错误&#xf…

Nodejs 第十四章(process)

process 是Nodejs操作当前进程和控制当前进程的API&#xff0c;并且是挂载到globalThis下面的全局API API 介绍 1. process.arch 返回操作系统 CPU 架构 跟我们之前讲的os.arch 一样 arm、arm64、ia32、mips、mipsel、ppc、ppc64、s390、s390x、以及 x64 2. process.cwd() …

docker 笔记5:redis 集群分布式存储案例

尚硅谷Docker实战教程&#xff08;docker教程天花板&#xff09;_哔哩哔哩_bilibili 目录 1.cluster(集群)模式-docker版哈希槽分区进行亿级数据存储 1.1面试题 1.1.1 方案1 哈希取余分区 1.1.2 方案2 一致性哈希算法分区 原理 优点 一致性哈希算法的容错性 一致性…

恢复数据的利器:易我数据恢复终身技术版v16.2.0.0

EaseUS Data Recovery Wizard为全球提供数据恢复方案,用于误删数据数据,电脑误删文件恢复,格式化硬盘数据恢复,手机U盘数据恢复等,RAID磁盘阵列数据恢复,分区丢失及其它未知原因丢失的数据恢复,简单易用轻松的搞定数据恢复。 特点描述 - 易我数据恢复中文便携版&#xff0c;无…

一笑的大型连续剧之第一集

自我介绍 哈喽&#xff0c;大家好。首先在开篇之前我想先自己介绍一下&#xff0c;我叫一笑&#xff0c;大家也可以叫我小舒。是一名又菜又爱写代码的Java程序员。当然这个也是我目前的一个想法&#xff0c;可以后期也可能想着去写一下其他的语言。介绍完成之后也就是单纯的想…

VPG算法

VPG算法 前言 首先来看经典的策略梯度REINFORCE算法&#xff1a; 在REINFORCE中&#xff0c;每次采集一个episode的轨迹&#xff0c;计算每一步动作的回报 G t G_t Gt​&#xff0c;与动作概率对数相乘&#xff0c;作为误差反向传播&#xff0c;有以下几个特点&#xff1a; …

Linux命令200例:Dump用来做文件系统备份

&#x1f3c6;作者简介&#xff0c;黑夜开发者&#xff0c;CSDN领军人物&#xff0c;全栈优质新星创作者✌。CSDN专家博主&#xff0c;阿里云社区专家博主&#xff0c;2023年6月csdn上海赛道top4。 &#x1f3c6;数年电商行业从业经验&#xff0c;历任核心研发工程师&#xff0…

C. Queries for the Array - 思维

分析&#xff1a; 分析出现矛盾的地方&#xff0c;也就是可能遇到0&#xff0c;并且已有字符串的长度小于等于1&#xff0c;另一种情况就是&#xff0c;遇到了1并且已有字符串不是排好序的&#xff0c;或者遇到了0已有字符串是排好序的&#xff0c;那么可以遍历字符串&#xff…

Arthas教程 - 安装篇 (一)

目录 一、在线安装 1.1 Windows安装 1.2 小结 1.3 linux安装 二、离线安装 一、在线安装 1.1 Windows安装 本地指定目录下&#xff08;例如我是&#xff1a;F:\测试\arthas&#xff09;&#xff0c;使用Windows的cmd窗口&#xff0c;执行如下命令则会将jar包下载下来。大…

STM32f103入门(10)ADC模数转换器

ADC模数转换器 ADC简介AD单通道初始化代码编写第一步开启时钟第二步 RCCCLK分频 6分频 72M/612M第三步 配置GPIO 配置为AIN状态第四步&#xff0c;选择规则组的输入通道第五步 用结构体 初始化ADC第六步 对ADC进行校准编写获取电压函数初始化代码如下 Main函数编写 ADC简介 ADC…

[杂谈]-快速了解Modbus协议

快速了解Modbus协议 文章目录 快速了解Modbus协议1、为何 Modbus 如此受欢迎2、范围和数据速率3、逻辑电平4、层数5、网络与通讯6、数据帧格式7、数据类型8、服务器如何存储数据9、总结 ​ Modbus 是一种流行的低速串行通信协议&#xff0c;广泛应用于自动化行业。 该协议由 Mo…

postgresql并行查询(高级特性)

######################## 并行查询 postgresql和Oracle一样支持并行查询的,比如select、update、delete大事无开启并行功能后,能够利用多核cpu,从而充分发挥硬件性能,提升大事物的处理效率。 pg在9.6的版本之前是不支持的并行查询的,从9.6开始支持并行查询,但是功能非常…

ISO/IEC标准之Mpeg-1到Mpeg21对应哪些ISO/IEC标准(三十八)

简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长! 优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀 人生格言: 人生从来没有捷径,只有行动才是治疗恐惧和懒惰的唯一良药. 更多原创,欢迎关注:Android…

数电再回顾

最近&#xff0c;花了点时间回顾数字电路&#xff0c;放几张我觉得比较好的截图&#xff0c;记录学习过程。 附录&#xff1a; 计算机是如何保存1和0的 - 知乎 (zhihu.com) 只读存储器ROM || ROM实现逻辑函数 || 数电 - 知乎 (zhihu.com) ROM的组成原理 -解决方案-华强电子网…

Java 复习笔记 - 字符串篇

文章目录 一&#xff0c;API和API帮助文档&#xff08;一&#xff09;API&#xff08;二&#xff09;API帮助文档 二&#xff0c;String概述三&#xff0c;String构造方法代码实现和内存分析四&#xff0c;字符串的比较五&#xff0c;综合练习&#xff08;一&#xff09;用户登…

python实现某音自动登录+获取视频数据

前言 Dy这个东西想必大家都用过&#xff0c;而且还经常刷&#xff0c;今天就来用代码&#xff0c;获取它的视频数据 环境使用 Python 3.8 Pycharm 模块使用 requests selenium json re 一. 数据来源分析 1. 明确需求 明确采集网站以及数据内容 网址: https://www.dy.com/…

Midjourney学习(四)光源类型prompt

序号类别光线名称英文名称描述用途示例1光线质地硬光Hard Light直接照射在主题上&#xff0c;产生明显的阴影和高对比度。强调轮廓&#xff0c;增加照片的戏剧性2光线质地软光/柔光Soft Light光线经过散射或扩散&#xff0c;产生柔和的阴影和低对比度。平滑细节&#xff0c;适合…