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 相关文章推荐
用js自动判断浏览器分辨率的代码
Jan 28 Javascript
Javascript中Eval函数的使用
Mar 23 Javascript
最简单的js图片切换效果实现代码
Sep 24 Javascript
单击复制文字兼容各浏览器的完美解决方案
Jul 04 Javascript
Javascript 绘制 sin 曲线过程附图
Aug 21 Javascript
jQuery获得子元素个数的方法
Apr 14 Javascript
jQuery实现冻结表格行和列
Apr 29 Javascript
深入理解JS addLoadEvent函数
May 20 Javascript
AngularJS封装指令方法详解
Dec 12 Javascript
JavaScript在控件上添加倒计时功能的实现代码
Jul 04 Javascript
layui结合form,table的全选、反选v1.0示例讲解
Aug 15 Javascript
JavaScript实现轮播图效果
Oct 30 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
php修改时间格式的代码
2011/05/29 PHP
qq登录,新浪微博登录接口申请过程中遇到的问题
2014/07/22 PHP
PHP return语句另类用法不止是在函数中
2014/09/17 PHP
PHP入门教程之图像处理技巧分析
2016/09/11 PHP
php str_replace替换指定次数的方法详解
2017/05/05 PHP
PHP实现给定一列字符,生成指定长度的所有可能组合示例
2019/06/22 PHP
javascript之水平横向滚动歌词同步的应用
2007/05/07 Javascript
javascript下判断一个对象是否具有指定名称的属性的的代码
2010/01/11 Javascript
javascript 主动派发事件总结
2011/08/09 Javascript
brook javascript框架介绍
2011/10/10 Javascript
javascript游戏开发之《三国志曹操传》零部件开发(二)人物行走的实现
2013/01/23 Javascript
.net,js捕捉文本框回车键事件的小例子(兼容多浏览器)
2013/03/11 Javascript
js事件冒泡实例分享(已测试)
2013/04/23 Javascript
一些老手都不一定知道的JavaScript技巧
2014/05/06 Javascript
jQuery实现加入购物车飞入动画效果
2015/03/14 Javascript
javascript实现Table间隔色以及选择高亮(和动态切换数据)的方法
2015/05/14 Javascript
基于zepto的移动端轻量级日期插件--date_picker
2016/03/04 Javascript
JavaScript导航脚本判断当前导航
2016/07/12 Javascript
百度搜索框智能提示案例jsonp
2016/11/28 Javascript
JavaScript 限制文本框不可输入英文单双引号的方法
2016/12/20 Javascript
Bootstrap框架安装使用详解
2017/01/21 Javascript
react 父组件与子组件之间的值传递的方法
2017/09/14 Javascript
VUE 实现滚动监听 导航栏置顶的方法
2018/09/11 Javascript
详解Vue中CSS样式穿透问题
2019/09/12 Javascript
JS一次前端面试经历记录
2020/03/19 Javascript
Node.js API详解之 module模块用法实例分析
2020/05/13 Javascript
[42:39]老党炸弹人试玩视频
2014/09/03 DOTA
Python教程之全局变量用法
2016/06/27 Python
Python可迭代对象操作示例
2019/05/07 Python
python词云库wordcloud的使用方法与实例详解
2020/02/17 Python
python中的socket实现ftp客户端和服务器收发文件及md5加密文件
2020/04/01 Python
市场营销管理毕业生自荐信
2014/03/03 职场文书
寄语是什么意思
2014/04/10 职场文书
文明寝室申报材料
2014/05/12 职场文书
2014年电话销售工作总结
2014/12/01 职场文书
React列表栏及购物车组件使用详解
2021/06/28 Javascript