vue父组件向子组件动态传值的两种方法


Posted in Javascript onNovember 11, 2017

在一些项目需求中需要父组件向子组件动态传值,比如我这里的需求是,父组件动态通过axios获取返回的图片url数组然后传给子组件,上传图片的子组件拿到该数组后进行遍历并展示图片

方法有两种,

方法一:

props传值,这里注意一个问题,传过来的值需要用watch监听并赋值,否则这里获取到的是空数组

  父组件:

<uploadImg :width="200" :height="200" name="productImage" size="750px*750px" ref="productImage" :src-list="this.productImage"></uploadImg>
this.productImage=res.data.cover;

这里把通过后台返回的数组赋值给

this.productImage,然后把该数组传给子组件定义的props属性src-list

子组件:

watch:{
     srcList(curVal,oldVal){
      if(curVal){
       ;
       this.uploadImg=curVal;
       }
     },
}

然后子组件成功获取到该数组

方法二:

通过ref属性,父组件调用子组件的方法,把要传的数组作为参数传给子组件,子组件获取该参数,并使用

父组件:

this.$refs.productImage.getSrcList(res.data.cover);

子组件:

getSrcList(val){
  this.uploadImg=val;
}

PS:下面看下vuejs动态组件给子组件传递数据

通过子组件定义时候的props可以支持父组件给子组件传递数据,这些定义的props在子组件的标签中使用绑定属性即可,但是如果使用的是<component>动态组件,这个时候就没有显式的子组件标签,要给子组件传递数据需要在<component> 中进行绑定

<div class="app" id="deviceready">
    <component :is="currentView" :user_name.sync="user_name" :DOB.sync="DOB"></component>
  </div>

组件的作用于是独立的

组件的作用于是独立的,如果要从跟组件获取数据,那么需要一层层的传递才行,也就是说子组件只能从直接父组件获取数据,如果是根组件的数据,那么父组件就要继续暴露pops从而绑定来自根组件的数据。

Javascript 相关文章推荐
JQuery 常用方法基础教程
Feb 06 Javascript
什么是DOM(Document Object Model)文档对象模型
Mar 05 Javascript
js获取当前日期前七天的方法
Feb 28 Javascript
javascript实现五星评价代码(源码下载)
Aug 11 Javascript
纯CSS3代码实现滑动开关效果
Aug 19 Javascript
jQuery+css实现的蓝色水平二级导航菜单效果代码
Sep 11 Javascript
实现React单页应用的方法详解
Aug 02 Javascript
js 获取图像缩放后的实际宽高,位置等信息
Mar 07 Javascript
JavaScript实现网页头部进度条刷新
Apr 16 Javascript
express启用https使用小记
May 21 Javascript
VUE.js实现动态设置输入框disabled属性
Oct 28 Javascript
微信小程序抽奖组件的使用步骤
Jan 11 Javascript
详解Vue如何支持JSX语法
Nov 10 #Javascript
微信小程序异步处理详解
Nov 10 #Javascript
微信小程序实现选项卡功能
Jun 19 #Javascript
微信小程序实现多宫格抽奖活动
Apr 15 #Javascript
十分钟带你快速了解React16新特性
Nov 10 #Javascript
JS实现移动端整屏滑动的实例代码
Nov 10 #Javascript
Three.js加载外部模型的教程详解
Nov 10 #Javascript
You might like
动漫女神老婆无限好,但日本女生可能就不是这么一回事了!
2020/03/04 日漫
如何做到多笔资料的同步
2006/10/09 PHP
PHP SPL标准库之文件操作(SplFileInfo和SplFileObject)实例
2015/05/11 PHP
服务器安全设置的几个注册表设置
2007/07/28 Javascript
js实现幻灯片效果(基于jquery插件)
2013/11/05 Javascript
jQuery简单几行代码实现tab切换
2015/03/10 Javascript
JS动态修改表格cellPadding和cellSpacing的方法
2015/03/31 Javascript
JavaScript实现函数返回多个值的方法
2015/06/09 Javascript
AngularJS指令详解及示例代码
2016/08/16 Javascript
H5用户注册表单页 注册模态框!
2016/09/17 Javascript
js实现网页同时进行多个倒计时功能
2019/02/25 Javascript
使用JavaScript解析URL的方法示例
2019/03/01 Javascript
解决Vue + Echarts 使用markLine标线(precision精度问题)
2020/07/20 Javascript
[48:48]VGJ.T vs Liquid 2018国际邀请赛小组赛BO2 第二场 8.19
2018/08/21 DOTA
简单的Python的curses库使用教程
2015/04/11 Python
Python工程师面试必备25条知识点
2018/01/17 Python
python统计指定目录内文件的代码行数
2019/09/19 Python
python打开使用的方法
2019/09/30 Python
python装饰器的特性原理详解
2019/12/25 Python
tensorflow自定义激活函数实例
2020/02/04 Python
python数据预处理方式 :数据降维
2020/02/24 Python
python numpy--数组的组合和分割实例
2020/02/24 Python
Python 使用双重循环打印图形菱形操作
2020/08/09 Python
墨西哥网上购物:Linio墨西哥
2016/10/20 全球购物
Vans(范斯)新西兰官方网站:美国原创极限运动品牌
2020/09/19 全球购物
内部类的定义、种类以及优点
2013/10/16 面试题
法院实习人员自我鉴定
2013/09/26 职场文书
实习教师个人的自我评价
2013/11/08 职场文书
爱国卫生月实施方案
2014/02/21 职场文书
音乐之声音乐广播稿
2014/09/10 职场文书
高中课前三分钟演讲稿
2014/09/13 职场文书
简单通用的简历自我评价
2014/09/21 职场文书
加强作风建设心得体会
2014/10/22 职场文书
2014年信访维稳工作总结
2014/12/08 职场文书
导游词之河北白洋淀
2020/01/15 职场文书
postgresql之greenplum字符串去重拼接方式
2023/05/08 PostgreSQL