微信小程序组件传值图示过程详解


Posted in Javascript onJuly 31, 2019

A是父组件,B是子组件

父传子

<!-- 父组件A wxml -->
<view>
 <componentB paramAtoB='{{paramAtoB}}'></componentB>
</view>

//父组件Ajson (里面不能有注释)

{
 "navigationBarTitleText": "父子传值",
 "usingComponents": {
  "componentB": "../../components/son/son"
 }
}
//父组件A js
// view/father/father.js
Page({
 /**
  * 页面的初始数据
  */
 data: {
  paramAtoB: "我是A向B传值"
 }
})
<!-- 子组件B wxml -->
<view class="inner">
 {{paramAtoB}}
</view>
//子组件B js
Component({
 //B在这里接收与data类似可以直接在wxml上用
 properties: {
  paramAtoB: {
   type: String,//类型
   value: 'default value'//默认值
  }
 },
 data: {  
 }
})

//子组件B json

{
 "component": true,
 "usingComponents": {}
}

效果

微信小程序组件传值图示过程详解

子传父

<!-- 父组件A wxml -->
<view>
 <componentB paramAtoB='{{paramAtoB}}' bind:myevent="onMyEvent"></componentB>
 {{ paramBtoA }}
</view>
// view/father/father.js
Page({

 /**
  * 页面的初始数据
  */
 data: {
  paramAtoB: "我是A向B传值",
  paramBtoA: 1122
 },
 onMyEvent: function (e) {
  //通过事件接收
  this.setData({
   paramBtoA: e.detail.paramBtoA
  })
 }
})

//父组件A json (里面不能有注释)

{
 "navigationBarTitleText": "父子传值",
 "usingComponents": {
  "componentB": "../../components/son/son"
 }
}
<!-- 子组件B wxml -->
<view class="inner">
 {{paramAtoB}}
 <button bindtap='change'>向A中传入参数</button>
</view>

(注意:子组件的方法需要写在methods:{}里面)

//子组件B js
Component({
 //B在这里接收与data类似可以直接在wxml上用
 properties: {
  paramAtoB: {
   type: String,//类型
   value: 'default value'//默认值
  }
 },
 data: {
  
 },
 methods: {
  //触发change事件向A传值
  change: function () {
   this.triggerEvent('myevent', { paramBtoA: "666传值成功" });
  }
 }
})

//子组件B json

{
 "component": true,
 "usingComponents": {}
}

原先效果

微信小程序组件传值图示过程详解

点击按钮之后

微信小程序组件传值图示过程详解

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
十个迅速提升JQuery性能让你的JQuery跑得更快
Dec 10 Javascript
由点击页面其它地方隐藏div所想到的jQuery的delegate
Aug 29 Javascript
引用外部脚本时script标签关闭的写法
Jan 20 Javascript
javascript实现给定半径求出圆的面积
Jun 26 Javascript
javascript数组排序汇总
Jul 07 Javascript
Bootstrap时间选择器datetimepicker和daterangepicker使用实例解析
Sep 17 Javascript
Javascript刷新页面的实例
Sep 23 Javascript
JS实现仿微信支付弹窗功能
Jun 25 Javascript
vue-cli配置全局sass、less变量的方法
Jun 06 Javascript
html-webpack-plugin修改页面的title的方法
Jun 18 Javascript
Vue实现背景更换颜色操作
Jul 17 Javascript
jquery实现简单拖拽效果
Jul 20 jQuery
vue.js实现回到顶部动画效果
Jul 31 #Javascript
vue实现滑动超出指定距离回顶部功能
Jul 31 #Javascript
Vue实现回到顶部和底部动画效果
Jul 31 #Javascript
详解mpvue实现对苹果X安全区域的适配
Jul 31 #Javascript
vue将后台数据时间戳转换成日期格式
Jul 31 #Javascript
Vue Element UI + OSS实现上传文件功能
Jul 31 #Javascript
原生js代码能实现call和bind吗
Jul 31 #Javascript
You might like
限制ckeditor上传图片文件大小的方法
2013/11/15 PHP
100行PHP代码实现socks5代理服务器
2016/04/28 PHP
thinkPHP实现的省市区三级联动功能示例
2017/05/05 PHP
JavaScript 数组循环引起的思考
2010/01/01 Javascript
js给dropdownlist添加选项的小例子
2013/03/04 Javascript
JS扩展方法实例分析
2015/04/15 Javascript
jquery自定义右键菜单、全选、不连续选择
2016/03/01 Javascript
基于JS实现的笛卡尔乘积之商品发布
2016/05/13 Javascript
微信小程序 slider 详解及实例代码
2017/01/10 Javascript
详解Vue.use自定义自己的全局组件
2017/06/14 Javascript
原生JS上传大文件显示进度条 php上传文件代码
2020/03/27 Javascript
Vue核心概念Action的总结
2019/01/18 Javascript
Nodejs让异步变成同步的方法
2019/03/02 NodeJs
bootstrap 日期控件 datepicker被弹出框dialog覆盖的解决办法
2019/07/09 Javascript
基于小程序请求接口wx.request封装的类axios请求
2020/07/02 Javascript
[00:28]DOTA2北京网鱼队选拔赛
2015/04/08 DOTA
Python fileinput模块使用实例
2015/05/28 Python
pandas的object对象转时间对象的方法
2018/04/11 Python
django 微信网页授权登陆的实现
2019/07/30 Python
PyTorch: 梯度下降及反向传播的实例详解
2019/08/20 Python
python list转置和前后反转的例子
2019/08/26 Python
python tkinter实现下载进度条及抖音视频去水印原理
2021/02/07 Python
琳达·法罗眼镜英国官网:Linda Farrow英国
2021/01/19 全球购物
.NET常见笔试题集
2012/12/01 面试题
测绘工程个人的自我评价
2013/11/10 职场文书
校园网站的创业计划书范文
2013/12/30 职场文书
九年级语文教学反思
2014/02/04 职场文书
初中新生军训方案
2014/05/13 职场文书
本科应届生求职信
2014/08/05 职场文书
2014年世界艾滋病日宣传活动总结
2014/11/18 职场文书
仓管员岗位职责范本
2015/04/01 职场文书
2015年电话销售工作总结范文
2015/04/20 职场文书
2015年安置帮教工作总结
2015/05/22 职场文书
小学运动会报道稿
2015/07/22 职场文书
Netflix《海贼王》真人版剧集多张片场照曝光
2022/04/04 日漫
Nginx反向代理、重定向
2022/04/13 Servers