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 相关文章推荐
javascript json2 使用方法
Mar 16 Javascript
js判断输入是否为正整数、浮点数等数字的函数代码
Nov 17 Javascript
js常用代码段收集
Oct 28 Javascript
Jquery 数组操作大全个人总结
Nov 13 Javascript
javascript ajax的5种状态介绍
Aug 18 Javascript
js倒计时小实例(多次定时)
Dec 08 Javascript
JavaScript实现瀑布流以及加载效果
Feb 11 Javascript
Angular4绑定html内容出现警告的处理方法
Nov 03 Javascript
详解 vue better-scroll滚动插件排坑
Feb 08 Javascript
Vue中div contenteditable 的光标定位方法
Aug 25 Javascript
Node.js API详解之 readline模块用法详解
May 22 Javascript
Vue详细的入门笔记
May 10 Vue.js
在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
smtp邮件发送一例
2006/10/09 PHP
PHP图片处理类 phpThumb参数用法介绍
2012/03/11 PHP
PHP的异常处理类Exception的使用及说明
2012/06/13 PHP
Jquery实现视频播放页面的关灯开灯效果
2013/05/27 Javascript
IE下Ajax缓存问题的快速解决方法(get方式)
2014/01/09 Javascript
jQuery中get和post方法传值测试及注意事项
2014/08/08 Javascript
node.js中的fs.fchown方法使用说明
2014/12/16 Javascript
简单实现JS对dom操作封装
2015/12/02 Javascript
Angular 2.x学习教程之结构指令详解
2017/05/25 Javascript
详解webpack分包及异步加载套路
2017/06/29 Javascript
JavaScrip关于创建常量的知识点
2017/12/07 Javascript
详解Chai.js断言库API中文文档
2018/01/31 Javascript
vue与vue-i18n结合实现后台数据的多语言切换方法
2018/03/08 Javascript
VUE在for循环里面根据内容值动态的加入class值的方法
2018/08/12 Javascript
vee-validate vue 2.0自定义表单验证的实例
2018/08/28 Javascript
浅谈vue方法内的方法使用this的问题
2018/09/15 Javascript
JavaScript定时器设置、使用与倒计时案例详解
2019/07/08 Javascript
微信小程序实现单个卡片左滑显示按钮并防止上下滑动干扰功能
2019/12/06 Javascript
python多线程http下载实现示例
2013/12/30 Python
Python合并字典键值并去除重复元素的实例
2016/12/18 Python
Pycharm 设置自定义背景颜色的图文教程
2018/05/23 Python
Keras之fit_generator与train_on_batch用法
2020/06/17 Python
python openssl模块安装及用法
2020/12/06 Python
科尔士百货公司官网:Kohl’s
2016/07/11 全球购物
阿迪达斯比利时官方商城:adidas比利时
2016/10/10 全球购物
Roxy俄罗斯官方网站:冲浪和滑雪板的一切
2020/06/20 全球购物
Claire’s法国:时尚配饰、美容、珠宝、头发
2021/01/16 全球购物
函授药学自我鉴定
2014/02/07 职场文书
通知书大全
2015/04/27 职场文书
入党介绍人意见范文
2015/06/01 职场文书
学校运动会开幕词
2016/03/03 职场文书
导游词之广州陈家祠
2019/10/21 职场文书
python b站视频下载的五种版本
2021/05/27 Python
世界十大儿童漫画书排名,法国国宝漫画排第五,第二是轰动日本连环
2022/03/18 欧美动漫
python神经网络Xception模型
2022/05/06 Python
向Spring IOC 容器动态注册bean实现方式
2022/07/15 Java/Android