详解微信小程序中组件通讯


Posted in Javascript onOctober 30, 2018

这篇主要讲组件通讯

(1)父组件向子组件传值:

<header title='{{title}}' bind:fn='fn' id='header'></header>

通过title='{{title}}'传向子组件向子组件传递参数

子组件接收参数:

Component({
 properties: {
  title: {    // 属性名 type: Number, // 类型(必填)
   type: String,//目前接受的类型包括:String, Number, Boolean, Object, Array, null(表示任意类型)
  },
  fn: {   
   type: Function,
  },
 },
 data: {
    
 },
 methods: {
  // 子组件调用父组件方法
  childFn() {
   console.log(this.data.title)
   this.triggerEvent("fn");
   //triggerEvent函数接受三个值:事件名称、数据、选项值 
  }
 }
})

methods使用title时 this.data.title 直接就可以获取到

通过 bind:fn='fn'传向子组件向子组件传递方法

方法同样也要在properties接收,methods里定义一个新方法, this.triggerEvent("fn") 接收父组件传递过来的方法

(2)父组件调用子组件数据及方法:

首先在父组件js onReady 生命周期中获取到组件

onReady: function () {
  //获得popup组件
  this.header= this.selectComponent("#header");
},

比如要调用子组件的一个function方法

// 调用子组件方法
 fn(){
  this.header.fn() //子组件的方法
 },

调用子组件数据的话直接 this.header.msg 就可以拿到子组件的数据

Javascript 相关文章推荐
Js的MessageBox
Dec 03 Javascript
9个JavaScript评级/投票插件
Jan 18 Javascript
javascript与CSS复习(二)
Jun 29 Javascript
javascript页面倒计时实例
Jul 25 Javascript
thinkphp实现无限分类(使用递归)
Dec 19 Javascript
jQuery简单获取键盘事件的方法
Jan 22 Javascript
JS函数修改html的元素内容,及修改属性内容的方法
Oct 28 Javascript
selenium 与 chrome 进行qq登录并发邮件操作实例详解
Apr 06 Javascript
jQuery EasyUI的TreeGrid查询功能实现方法
Aug 08 jQuery
JavaScript的Proxy可以做哪些有意思的事儿
Jun 15 Javascript
Vue+Element实现网页版个人简历系统(推荐)
Dec 31 Javascript
vuex的数据渲染与修改浅析
Nov 26 Vue.js
vue移动端项目缓存问题实践记录
Oct 29 #Javascript
vue 使用vue-i18n做全局中英文切换的方法
Oct 29 #Javascript
Element-UI踩坑之Pagination组件的使用
Oct 29 #Javascript
vue-router权限控制(简单方式)
Oct 29 #Javascript
详解Vue项目在其他电脑npm run dev运行报错的解决方法
Oct 29 #Javascript
Vue项目自动转换 px 为 rem的实现方法
Oct 29 #Javascript
vue 本地服务不能被外部IP访问的完美解决方法
Oct 29 #Javascript
You might like
二十行语句实现从Excel到mysql的转化
2006/10/09 PHP
mongo Table类文件 获取MongoCursor(游标)的实现方法分析
2013/07/01 PHP
php中动态调用函数的方法
2015/03/16 PHP
php实现微信企业转账功能
2018/10/02 PHP
php 使用expat方式解析xml文件操作示例
2019/11/26 PHP
使Ext的Template可以解析二层的json数据的方法
2007/12/22 Javascript
javascript 字符 Escape,encodeURI,encodeURIComponent
2009/07/09 Javascript
JQery 渐变图片导航效果代码 漂亮
2010/01/01 Javascript
jQuery Deferred和Promise创建响应式应用程序详细介绍
2013/03/05 Javascript
jquery 获取表单元素里面的值示例代码
2013/07/28 Javascript
js中window.open打开一个新的页面
2014/08/10 Javascript
js用Date对象的setDate()函数对日期进行加减操作
2014/09/18 Javascript
js实现发送验证码后的倒计时功能
2015/05/28 Javascript
jQuery日历插件datepicker用法详解
2016/03/03 Javascript
jQuery防止重复绑定事件的解决方法
2016/05/14 Javascript
jQuery 3.0 的 setter和getter 模式详解
2016/07/11 Javascript
jQuery实现的简单百分比进度条效果示例
2016/08/01 Javascript
微信小程序 Toast自定义实例详解
2017/01/20 Javascript
HTML中使背景图片自适应浏览器大小实例详解
2017/04/06 Javascript
webpack4 SCSS提取和懒加载的示例
2018/09/03 Javascript
深入理解Node内建模块和对象
2019/03/12 Javascript
jquery实现拖拽添加元素功能
2020/12/01 jQuery
python selenium UI自动化解决验证码的4种方法
2018/01/05 Python
Python如何处理大数据?3个技巧效率提升攻略(推荐)
2019/04/15 Python
Python实现串口通信(pyserial)过程解析
2019/09/25 Python
计算pytorch标准化(Normalize)所需要数据集的均值和方差实例
2020/01/15 Python
Jupyter notebook运行Spark+Scala教程
2020/04/10 Python
什么是聚集索引和非聚集索引
2012/01/17 面试题
介绍一下你对SOA的认识
2016/04/24 面试题
大学自我鉴定
2013/12/20 职场文书
《夹竹桃》教学反思
2014/04/20 职场文书
单位单身证明样本
2014/10/11 职场文书
2014年基层党建工作总结
2014/11/11 职场文书
求职推荐信范文
2015/03/27 职场文书
2019年怎样写好导游词?
2019/07/02 职场文书
详解Apache SkyWalking 告警配置指南
2021/04/22 Servers