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 ajax在GBK编码下表单提交终极解决方案(非二次编码方法)
Oct 20 Javascript
javascript使用中为什么10..toString()正常而10.toString()出错呢
Jan 11 Javascript
使用简洁的jQuery方法实现隔行换色功能
Jan 02 Javascript
捕获和分析JavaScript Error的方法
Mar 25 Javascript
使用JS画图之点、线、面
Jan 12 Javascript
JSON遍历方式实例总结
Dec 07 Javascript
学习javascript面向对象 掌握创建对象的9种方式
Jan 04 Javascript
利用JS实现文字的聚合动画效果
Jan 22 Javascript
node.js 用socket实现聊天的示例代码
Oct 17 Javascript
vue 关闭浏览器窗口的时候,清空localStorage的数据示例
Nov 06 Javascript
js实现带搜索功能的下拉框
Jan 11 Javascript
vue项目里面引用svg文件并给svg里面的元素赋值
Aug 17 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 url地址栏传中文乱码解决方法集合
2010/06/25 PHP
解析php中die(),exit(),return的区别
2013/06/20 PHP
PHP 读取和编写 XML
2014/11/19 PHP
Zend Framework教程之Resource Autoloading用法实例
2016/03/08 PHP
总结一些js自定义的函数
2006/08/05 Javascript
javascript的onchange事件与jQuery的change()方法比较
2009/09/28 Javascript
基于jQuery的仿flash的广告轮播代码
2010/11/04 Javascript
javascript游戏开发之《三国志曹操传》零部件开发(五)可移动地图的实现
2013/01/23 Javascript
使用js简单实现了tree树菜单
2013/11/20 Javascript
JavaScript实现大数的运算
2014/11/24 Javascript
JavaScript数据结构和算法之图和图算法
2015/02/11 Javascript
js运动动画的八个知识点
2015/03/12 Javascript
javascript实现简单的二级联动
2015/03/19 Javascript
深入理解JavaScript中的箭头函数
2015/07/28 Javascript
基于javascript实现动态显示当前系统时间
2016/01/28 Javascript
JavaScript实现简单的隐藏式侧边栏功能示例
2018/08/31 Javascript
详解Vue用cmd创建项目
2019/02/12 Javascript
微信小程序 弹窗输入组件的实现解析
2019/08/12 Javascript
在antd Form表单中select设置初始值操作
2020/11/02 Javascript
python连接MySQL数据库实例分析
2015/05/12 Python
Python自动登录126邮箱的方法
2015/07/10 Python
python实现生命游戏的示例代码(Game of Life)
2018/01/24 Python
Python Socket编程之多线程聊天室
2018/07/28 Python
Python3内置模块之json编解码方法小结【推荐】
2020/12/09 Python
Django如何将URL映射到视图
2019/07/29 Python
原装进口全世界:天猫国际
2016/08/03 全球购物
英国电动工具购买网站:Anglia Tool Centre
2017/04/25 全球购物
Etam艾格英国官网:法国著名女装品牌
2019/04/15 全球购物
JAVA的事件委托机制和垃圾回收机制
2014/09/07 面试题
简述进程的启动、终止的方式以及如何进行进程的查看
2013/07/12 面试题
平面设计自荐信
2013/10/07 职场文书
党的群众路线教育实践方案
2014/05/11 职场文书
歌唱比赛策划方案
2014/06/06 职场文书
单位推荐信范文
2015/03/27 职场文书
给老师的保证书怎么写
2015/05/09 职场文书
Apache SkyWalking 监控 MySQL Server 实战解析
2022/09/23 Servers