Vue 父子组件的数据传递、修改和更新方法


Posted in Javascript onMarch 01, 2018

父子组件之间的数据关系,我这边将情况具体分成下面4种:

父组件修改子组件的data,并实时更新

子组件通过$emit传递子组件的数据,this.$data指当前组件的data(return{...})里的所有数据,

this.$emit('data',this.$data);

之后通过父组件的getinputdata方法来接收数据

@data='getinputdata'

其中的data就是传过来的数据,通过修改这个数据就可以通过父组件实时更新子组件

getinputdata(data) {
 console.log(data);
 data.background = {
  backgroundColor: 'yellow',
  border: 'none'
 };
}

子组件修改父组件的data

在子组件中是修改不了父组件的data的,只有通过上面的$emit方法在父组件中修改数据。

可参考vue官网的自定义事件:https://cn.vuejs.org/v2/guide/components.html#%E8%87%AA%E5%AE%9A%E4%B9%89%E4%BA%8B%E4%BB%B6

子组件获取父组件的data,修改但不实时更新

1. 子组件将父组件通过props传递的数据,再把props的值赋给let或var声明变量,之后使用这个变量就可以了。

let test = this.testoutdata;
test++;
console.log(test);
console.log('test:'+this.testoutdata);

2. 子组件将父组件通过props传递的数据,再把props的值赋给data(return{...})里的变量,之后使用这个变量就可以了。

this.outtest++;
console.log(this.outtest);
console.log('test:'+this.testoutdata);

可参考vue官网的自定义事件:https://cn.vuejs.org/v2/guide/components.html#%E5%8D%95%E5%90%91%E6%95%B0%E6%8D%AE%E6%B5%81

父组件获取子组件的data,修改但不实时更新

这边的方法和‘子组件获取父组件的data,修改但不实时更新'的方法一样,其中只有传值的方式有区别。子组件通过$emit把值传给父组件。

以上这篇Vue 父子组件的数据传递、修改和更新方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jQuery 注意事项 与原因分析
Apr 24 Javascript
深入理解JavaScript系列(10) JavaScript核心(晋级高手必读篇)
Jan 15 Javascript
什么是json和jsonp,jQuery json实例详详细说明
Dec 11 Javascript
Javascript Boolean、Nnumber、String 强制类型转换的区别详细介绍
Dec 13 Javascript
Jquery读取URL参数小例子
Aug 30 Javascript
js 数据存储和DOM编程
Feb 09 Javascript
使用vue-cli打包过程中的步骤以及问题的解决
May 08 Javascript
JavaScript数组方法的错误使用例子
Sep 13 Javascript
JavaScript检查数据中是否存在相同的元素(两种方法)
Oct 07 Javascript
ES6知识点整理之函数对象参数默认值及其解构应用示例
Apr 17 Javascript
使用Vue生成动态表单
Nov 26 Javascript
vue项目实现分页效果
Mar 24 Vue.js
vue2.0 子组件改变props值,并向父组件传值的方法
Mar 01 #Javascript
浅谈vue单一组件下动态修改数据时的全部重渲染
Mar 01 #Javascript
vue 虚拟dom的patch源码分析
Mar 01 #Javascript
基于cropper.js封装vue实现在线图片裁剪组件功能
Mar 01 #Javascript
详解vue-cli 快速搭建单页应用之遇到的问题及解决办法
Mar 01 #Javascript
React Native 图片查看组件的方法
Mar 01 #Javascript
vue-cli结合Element-ui基于cropper.js封装vue实现图片裁剪组件功能
Mar 01 #Javascript
You might like
用PHP+java实现自动新闻滚动窗口
2006/10/09 PHP
php实现四舍五入的方法小结
2015/03/03 PHP
[原创]PHP实现生成vcf vcard文件功能类定义与使用方法详解【附demo源码下载】
2017/09/02 PHP
JavaScript 事件查询综合
2009/07/13 Javascript
jQuery 使用手册(五)
2009/09/23 Javascript
javascript克隆对象深度介绍
2012/11/20 Javascript
Eval and new funciton not the same thing
2012/12/27 Javascript
js定时器怎么写?就是在特定时间执行某段程序
2013/10/11 Javascript
jquery判断浏览器后退时候弹出消息的方法
2014/08/11 Javascript
JavaScript位移运算符(无符号) >>> 三个大于号 的使用方法详解
2016/03/31 Javascript
利用bootstrapValidator验证UEditor
2016/09/14 Javascript
nodejs的HTML分析利器node-jquery用法浅析
2016/11/08 NodeJs
使用微信内嵌H5网页解决JS倒计时失效问题
2017/01/13 Javascript
Vue Spa切换页面时更改标题的实例代码
2017/07/15 Javascript
详解在HTTPS 项目中使用百度地图 API
2019/04/26 Javascript
JavaScript进阶(三)闭包原理与用法详解
2020/05/09 Javascript
JS组件库AlloyTouch实现图片轮播过程解析
2020/05/29 Javascript
[02:12]打造更好的电竞完美世界:完美盛典回顾篇
2018/12/19 DOTA
python进阶教程之词典、字典、dict
2014/08/29 Python
Python的爬虫框架scrapy用21行代码写一个爬虫
2017/04/24 Python
python实战之实现excel读取、统计、写入的示例讲解
2018/05/02 Python
从请求到响应过程中django都做了哪些处理
2018/08/01 Python
Python实现的建造者模式示例
2018/08/06 Python
python3通过selenium爬虫获取到dj商品的实例代码
2019/04/25 Python
python获取txt文件词向量过程详解
2019/07/05 Python
CSS3系列之3D制作方法案例
2017/08/14 HTML / CSS
CSS3使用transition属性实现过渡效果
2018/04/18 HTML / CSS
意大利火车票和铁路通行证专家:ItaliaRail
2019/01/22 全球购物
大学生毕业自我鉴定范文
2013/09/19 职场文书
安全生产检讨书
2014/01/21 职场文书
本科毕业生求职自荐信
2014/02/03 职场文书
个人房屋买卖协议书(范本)
2014/10/04 职场文书
大学生心理健康活动总结
2015/05/08 职场文书
又涨知识了,自律到底多重要?
2019/06/27 职场文书
详解MySQL集群搭建
2021/05/26 MySQL
MySQL Server 层四个日志
2022/03/31 MySQL