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代码
Jul 01 Javascript
关于js中alert弹出窗口文本换行问题简单详细说明
Dec 11 Javascript
图片img的src不变让浏览器重新加载实现方法
Mar 29 Javascript
javascript:void(0)使用探讨
Aug 27 Javascript
浅析jQuery 3.0中的Data
Jun 14 Javascript
webpack实现热加载自动刷新的方法
Jul 30 Javascript
Vue的实例、生命周期与Vue脚手架(vue-cli)实例详解
Dec 27 Javascript
angular2中Http请求原理与用法详解
Jan 11 Javascript
js常用正则表达式集锦
May 17 Javascript
uni-app微信小程序登录并使用vuex存储登录状态的思路详解
Nov 04 Javascript
jQuery实现html可联动的百分比进度条
Mar 26 jQuery
微信小程序实现聊天室
Aug 21 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简单smarty入门程序实例
2015/06/11 PHP
PHP模拟post提交数据方法汇总
2016/02/16 PHP
详解Laravel设置多态关系模型别名的方式
2019/10/17 PHP
javascript简单实现表格行间隔显示颜色并高亮显示
2013/11/29 Javascript
浅析Node.js中使用依赖注入的相关问题及解决方法
2015/06/24 Javascript
jQuery获取多种input值的简单实现方法
2016/06/20 Javascript
基于Vue2的移动端开发环境搭建详解
2016/11/03 Javascript
AngularJS监听路由变化的方法
2017/03/07 Javascript
详解node Async/Await 更好的异步编程解决方案
2018/05/10 Javascript
JS实现select选中option触发事件操作示例
2018/07/13 Javascript
修改vue+webpack run build的路径方法
2018/09/01 Javascript
pm2发布node配置文件ecosystem.json详解
2019/05/15 Javascript
如何在Angular8.0下使用ngx-translate进行国际化配置
2019/07/24 Javascript
vue项目从node8.x升级到12.x后的问题解决
2019/10/25 Javascript
python获取微信小程序手机号并绑定遇到的坑
2018/11/19 Python
python的常用模块之collections模块详解
2018/12/06 Python
利用ctypes获取numpy数组的指针方法
2019/02/12 Python
浅谈python的深浅拷贝以及fromkeys的用法
2019/03/08 Python
PyQt5 多窗口连接实例
2019/06/19 Python
python 实现将多条曲线画在一幅图上的方法
2019/07/07 Python
python数组循环处理方法
2019/08/26 Python
python实发邮件实例详解
2019/11/11 Python
python实现学生成绩测评系统
2020/06/22 Python
Python dict的常用方法示例代码
2020/06/23 Python
CSS3系列之3D制作方法案例
2017/08/14 HTML / CSS
宝拉珍选美国官网:Paula’s Choice美国
2018/01/07 全球购物
瑞典度假品牌:OAS
2019/05/28 全球购物
介绍一下grep命令的使用
2015/06/12 面试题
检查机关党的群众路线个人整改措施
2014/10/04 职场文书
2015年国庆节慰问信
2015/03/23 职场文书
道歉的话怎么说
2015/05/12 职场文书
2015暑假打工实践报告
2015/07/13 职场文书
《观潮》教学反思
2016/02/17 职场文书
如何使用PostgreSQL进行中文全文检索
2021/05/27 PostgreSQL
springmvc直接不经过controller访问WEB-INF中的页面问题
2022/02/24 Java/Android
Python图像处理库PIL详细使用说明
2022/04/06 Python