vue组件传递对象中实现单向绑定的示例


Posted in Javascript onFebruary 28, 2018

当使用vue组件时,组件之间经常需要传递数据,这里不讨论传递一个字符串变量或者数字变量的情况,那些去看官方文档就够了,此处提出我在组件间传递对象时遇到的一个坑。

当组件间传递对象时,由于此对象的引用类型指向的都是一个地址,所以在子组件中修改对象的某个属性值,父组件中的对象对应的属性也会随之改变,如果有这种双向绑定的需要,那么这也算一种不错的办法,但如果不需要这种双向绑定,那就要定义一个新的对象来复制原对象的属性和值,坑就在这里,假如你普通的var、let 一个对象,例如:

computed: { 
  data: function () { 
   let obj={}; 
   obj=this.message//this.message是父组件传递的对象 
   return obj 
 } 
 },

将data中各属性分别绑定到输入框中,并修改试试,你会发现父组件中对应的属性值还是会改变,并没有实现单向绑定的效果,这时就需要加一个方法了

computed: { 
 data: function () { 
  let obj=Object.assign({}, this.message); 
  return obj 
 } 
 },

这样返回的data就是一个新的对象,并不会指向原对象的地址,所以再对其进行修改就不会对父组件中的对象造成影响了。

以上这篇vue组件传递对象中实现单向绑定的示例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
greybox——不开新窗口看新的网页
Feb 20 Javascript
利用json获取字符出现次数的代码
Mar 22 Javascript
js setTimeout()函数介绍及应用以倒计时为例
Dec 12 Javascript
jQuery解析Json实例详解
Nov 24 Javascript
javascript的BOM
May 03 Javascript
JS实现六边形3D拖拽翻转效果的方法
Sep 11 Javascript
webpack入门必知必会
Jan 16 Javascript
React Native使用百度Echarts显示图表的示例代码
Nov 07 Javascript
微信小程序 弹窗输入组件的实现解析
Aug 12 Javascript
Javascript地址引用代码实例解析
Feb 25 Javascript
JS删除数组指定值常用方法详解
Jun 04 Javascript
JS如何调用WebAssembly编译出来的.wasm文件
Nov 05 Javascript
在Vue组件中使用 TypeScript的方法
Feb 28 #Javascript
React组件中的this的具体使用
Feb 28 #Javascript
浅谈Vue网络请求之interceptors实际应用
Feb 28 #Javascript
Node.js中DNS模块学习总结
Feb 28 #Javascript
Vue自定义指令实现checkbox全选功能的方法
Feb 28 #Javascript
如何在vue中使用ts的示例代码
Feb 28 #Javascript
angularjs select 赋值 ng-options配置方法
Feb 28 #Javascript
You might like
第十节--抽象方法和抽象类
2006/11/16 PHP
php header()函数使用说明
2008/07/10 PHP
php 论坛采集程序 模拟登陆,抓取页面 实现代码
2009/07/09 PHP
Zend的MVC机制使用分析(二)
2013/05/02 PHP
Linux编译升级php的详细方法
2013/11/04 PHP
PHP生成短网址的3种方法代码实例
2014/07/08 PHP
php精确的统计在线人数的方法
2015/10/21 PHP
JS获得URL超链接的参数值实例代码
2013/06/21 Javascript
学习JavaScript设计模式(封装)
2015/11/26 Javascript
js倒计时抢购实例
2015/12/20 Javascript
Bootstrap导航栏各元素操作方法(表单、按钮、文本)
2015/12/28 Javascript
js如何改变文章的字体大小
2016/01/08 Javascript
原生js实现返回顶部缓冲效果
2017/01/18 Javascript
jQuery中的deferred对象和extend方法详解
2017/05/08 jQuery
看看“疫苗查询”小程序有温度的代码
2018/07/31 Javascript
JS+HTML5 Canvas实现简单的写字板功能示例
2018/08/30 Javascript
Vue中的作用域CSS和CSS模块的区别
2018/10/09 Javascript
使用vue for时为什么要key【推荐】
2019/07/11 Javascript
微信小程序实现页面监听自定义组件的触发事件
2020/11/01 Javascript
Vue实现多页签组件
2021/01/14 Vue.js
在Python程序中操作文件之flush()方法的使用教程
2015/05/24 Python
使用apidoc管理RESTful风格Flask项目接口文档方法
2018/02/07 Python
用tensorflow构建线性回归模型的示例代码
2018/03/05 Python
python数字图像处理之高级形态学处理
2018/04/27 Python
Python操作mongodb数据库进行模糊查询操作示例
2018/06/09 Python
在Pycharm中对代码进行注释和缩进的方法详解
2019/01/20 Python
python实现微信定时每天和女友发送消息
2019/04/29 Python
Window10下python3.7 安装与卸载教程图解
2019/09/30 Python
pytorch 实现查看网络中的参数
2020/01/06 Python
python如何输出反斜杠
2020/06/18 Python
个人委托书格式
2014/04/04 职场文书
离婚被告代理词
2015/05/23 职场文书
学校元旦晚会开场白
2015/05/29 职场文书
入党介绍人意见怎么写
2015/06/03 职场文书
团支部组织委员竞选稿
2015/11/21 职场文书
2016天猫双十一广告语
2016/01/28 职场文书