vue父子组件传值的方法总结
一,父向子传值
1.通过props
使用技巧:
子组件内, props定义变量, 在子组件使用变量
父组件内, 使用子组件, 属性方式给props变量传值
注意事项:
父组件的数据发生了改变,子组件会自动跟着变
子组件不能直接修改父组件传递过来的props,会报错, props是只读的
子组件修改,不通知父级,会造成数据不一致
PS:父组件传给子组件的是一个对象,子组件修改对象的属性,是不会报错的,对象是引用类型, 互相更新
总结:
说明了从父到子的数据流向是单向数据流
props的值不能重新赋值, 对象引用关系属性值改变, 互相影响
2.通过$parent
使用技巧:
子组件,通过this.$parent获取到 父组件的值或者方法 并可以直接对其值进行修改或对其方法直接调用
二,子向父传值
1.通过$emit
使用技巧:
父组件内, 给组件@自定义事件="父methods函数"
子组件内, 恰当时机this.$emit('自定义事件名', 值)
三,当父向子传值 子组件又要修改父组件的值时 用到的方法
1.通过v-model (一个组件只能使用一次)
使用技巧:
父组件内 ,在组件上使用 v-model(以下俩句代码是v-model的原理)
传递 :value="Show"
修改 @input="Show= $event" 这个$event 就是子组件传递过来的值
子组件内, 在props中默认用value接收传递过来的值 ;在methods中通过默认的自定义事件名 传递要修改的值
效果:
注意事项:
1.一个组件上只能使用一次 v-model,
2.如果需要修改 v-model 的规则名称,可以通过子组件的 model 属性来配置修改
实例如下:
在子组件的model中进行修改 父组件不用变
疑问: 如果有多个数据需要实现类似于 v-model 的效果,要怎么办呐?
不要捉急 ,下面就有请我们的.sync修饰符闪亮登场叭
2.使用属性的 .sync 修饰符
使用技巧:
父组件内 ,在组件使用.sync
子组件内,在适当的时机this.$emit('update:props属性名',值)
持续更新中........
vue父子组件传值的方法总结相关推荐
- vue 父子组件传值以及方法调用,平行组件之间传值以及方法调用大全
vue项目经常需要组件间的传值以及方法调用,具体场景就不说了,都知道.基本上所有的传值都可以用vuex状态管理来实现,只要在组件内监听vuex就好. vue常用的传值方式以及方法有: 1. 父值传子( ...
- vue父子组件传值的方法
一.父组件传值给子组件 1.props 子组件<Child>: props:["name"]父组件<Father>:<Child name ...
- vue父子组件传值之 $emit和props
vue父子组件传值之 $emit和props 前言 子组件向父组件传值 父组件向子组件传值 前言 在进行vue的项目中,我们难免会需要父子组件之间进行传值,父子组件传值可以通过 $emit和props ...
- vue父子组件传值的一些坑(深浅拷贝)
本文章转载:https://www.yht7.com/news/116487 1.问题描述 父组件传值给子组件,子组件改变传过来的值后,父组件的值也会跟着改变. 这个问题比较冷门,平时如果对组件通信使 ...
- vue父子组件传值:详解父组件向子组件传值(props)
vue父子组件传值:父组件向子组件传值用的是props 1.定义父组件 1)父组件想要向子组件传值时,那么需要在子组件引入的地方绑定一个属性,属性值就是要传的数据,并且要在父组件中引入子组件. 2)这 ...
- vue兄弟组件传值的方法
vue兄弟组件传值的方法 主要通过event事件来传值: 传值的组件使用$emit发送事件 接受值的组件通过$on绑定事件接受 第一步 创建js文件 test.js import Vue from ' ...
- Vue父子组件传值----$emit子传父
Vue父子组件传值是个比较经典的问题,在这里,咱们先谈一下,子组件给父组件传值. 这是一个子组件 <!-- 子组件1 --> <template><div class=& ...
- vue父子组件传值之异步之后子组件无法拿到父组件传的值
在vue中父子组件传值是非常常见的,父组件给子组件传值使用的是props,子组件给父组件传值使用的是$emit 但是今天就不详细的介绍父子组件之间传值,在这里我们介绍的是子组件在异步请求回来的参数无法 ...
- vue 父子组件传值
父子组件传值 最常用的方法(4种) 1 . 父组件 传递数据 给子组件(props)vue官方文档 特别注意!!特别注意!!特别注意!! props传值的类型如果是Object类型,如对象,数组等,传 ...
最新文章
- Ajax实现DataGrid/DataList动态ToolTip
- Linux System Programming --Chapter Eight
- 音频处理六:(音频的反FFT)
- @EnableDiscoveryClient和@EnableEurekaClient的区别
- sonarqube执行命令遇上的小问题
- nginx 负载均衡tomcat
- python 爬取_使用 Python 和 BeautifulSoup 来做爬虫抓取
- 面向服务架构十大技术与基础理论
- JAVA基础语法 - 继承
- 中国手机沉浮录:告别青铜时代
- My interest is the rules/ways to implement, go and insist with interest!!!
- Python批量合并处理B站视频
- Vue2 + ant design vue1.7.8版本 Table组件 手动拖拽、可伸缩列功能
- linux命令 查看分辨率,linux怎样在命令行模式修改屏幕分辨率
- vs2017下libcef配置
- 递归与lamdba与高阶函数
- ALtera DE2开发板学习
- 极简使用︱Gemsim-FastText 词向量训练以及OOV(out-of-word)问题有效解决
- 微信公众号包含敏感信息
- 武汉新时标文化传媒有限公司:从用户体验的角度分析抖音