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浏览器选项卡效果
Aug 25 Javascript
jquery 回车事件实现代码
Aug 23 Javascript
Web Inspector:关于在 Sublime Text 中调试Js的介绍
Apr 18 Javascript
js实现登录框鼠标拖拽效果
Mar 09 Javascript
Vue 表单控件绑定的实现示例
Aug 11 Javascript
vue中轮训器的使用
Jan 27 Javascript
JS实现的全选、全不选及反选功能【案例】
Feb 19 Javascript
ElementUI Tag组件实现多标签生成的方法示例
Jul 08 Javascript
JavaScript中变量提升和函数提升的详解
Aug 07 Javascript
vue-cli3配置favicon.ico和title的流程
Oct 27 Javascript
Jquery Fade用法详解
Nov 06 jQuery
微信小程序基础教程之echart的使用
Jun 01 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
xajax写的留言本
2006/11/25 PHP
发布一个迷你php+AJAX聊天程序[聊天室]提供下载
2007/07/21 PHP
php实现信用卡校验位算法THE LUHN MOD-10示例
2014/05/07 PHP
PHP中的密码加密的解决方案总结
2016/10/26 PHP
PHP调用API接口实现天气查询功能的示例
2017/09/21 PHP
php插入mysql数据返回id的方法
2018/05/31 PHP
写出更好的JavaScript程序之undefined篇(中)
2009/11/23 Javascript
JavaScript replace(rgExp,fn)正则替换的用法
2010/03/04 Javascript
jQuery EasyUI API 中文文档 - Tree树使用介绍
2011/11/19 Javascript
Jquery 全选反选实例代码
2015/11/19 Javascript
Bootstrap框架安装使用详解
2017/01/21 Javascript
数组Array的排序sort方法
2017/02/17 Javascript
JS使用ActiveXObject实现用户提交表单时屏蔽敏感词功能
2017/06/20 Javascript
AngularJS中使用three.js的实例详解
2017/07/21 Javascript
微信小程序中进行地图导航功能的实现方法
2018/06/29 Javascript
vue观察模式浅析
2018/09/25 Javascript
vue点击当前路由高亮小案例
2019/09/26 Javascript
Python多线程编程(六):可重入锁RLock
2015/04/05 Python
wxPython使用系统剪切板的方法
2015/06/16 Python
Python 字典与字符串的互转实例
2017/01/13 Python
Python3如何解决字符编码问题详解
2017/04/23 Python
Python之Scrapy爬虫框架安装及使用详解
2017/11/16 Python
Python发送邮件实现基础解析
2020/08/14 Python
详解torch.Tensor的4种乘法
2020/09/03 Python
python list的index()和find()的实现
2020/11/16 Python
澳大利亚人信任的清洁平台,您的私人管家:Jarvis
2020/12/25 全球购物
建筑工程技术应届生自荐信
2013/09/27 职场文书
春节联欢会主持词
2014/03/24 职场文书
新闻报道策划方案
2014/06/11 职场文书
干部个人对照检查材料
2014/08/25 职场文书
2015年感恩父亲节活动策划方案
2015/05/05 职场文书
《折线统计图》教学反思
2016/02/22 职场文书
汉语拼音教学反思
2016/02/22 职场文书
《天使的翅膀》读后感3篇
2019/12/20 职场文书
python必学知识之文件操作(建议收藏)
2021/05/30 Python
Python anaconda安装库命令详解
2021/10/16 Python