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


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来定位
Feb 20 Javascript
jquery 插件之仿“卓越亚马逊”首页弹出菜单效果
Dec 25 Javascript
ASP.NET jQuery 实例6 (实现CheckBoxList成员全选或全取消)
Jan 13 Javascript
你需要知道的10个最佳javascript开发实践小结
Apr 15 Javascript
js获取字符串字节数方法小结
Jun 09 Javascript
基于 Node.js 实现前后端分离
Apr 23 Javascript
微信小程序获取微信运动步数的实例代码
Jul 20 Javascript
bootstrap多层模态框滚动条消失的问题
Jul 21 Javascript
Node使用Sequlize连接Mysql报错:Access denied for user ‘xxx’@‘localhost’
Jan 03 Javascript
微信小程序 setData 对 data数据影响问题
Apr 18 Javascript
小程序如何支持使用 async/await详解
Sep 12 Javascript
JS实现躲避粒子小游戏
Jun 18 Javascript
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
php设计模式之单例、多例设计模式的应用分析
2013/06/30 PHP
php与flash as3 socket通信传送文件实现代码
2014/08/16 PHP
Yii核心组件AssetManager原理分析
2014/12/02 PHP
php格式化时间戳
2016/12/17 PHP
PHP 文件锁与进程锁的使用示例
2017/08/07 PHP
JavaScript Undefined,Null类型和NaN值区别
2008/10/22 Javascript
关于JQuery($.load)事件的用法和分析
2013/04/09 Javascript
复选框全选与全不选操作实现思路
2013/08/18 Javascript
js里取容器大小、定位、距离等属性搜集整理
2013/08/19 Javascript
jquery滚动条插件jScrollPane的使用介绍
2013/11/08 Javascript
Node.js中使用mongoskin操作mongoDB实例
2014/09/28 Javascript
javascript中callee与caller的区别分析
2015/04/20 Javascript
教大家轻松制作Bootstrap漂亮表格(table)
2016/12/13 Javascript
ES6 javascript的异步操作实例详解
2017/10/30 Javascript
node中modules.exports与exports导出的区别
2018/06/08 Javascript
mpvue 单文件页面配置详解
2018/12/02 Javascript
JavaScript实现京东快递单号查询
2020/11/30 Javascript
初步理解Python进程的信号通讯
2015/04/09 Python
Python读写文件方法总结
2015/06/09 Python
python验证码识别的示例代码
2017/09/21 Python
利用Python实现在同一网络中的本地文件共享方法
2018/06/04 Python
[原创]Python入门教程3. 列表基本操作【定义、运算、常用函数】
2018/10/30 Python
python基于递归解决背包问题详解
2019/07/03 Python
Python (Win)readline和tab补全的安装方法
2019/08/27 Python
Python+Django+MySQL实现基于Web版的增删改查的示例代码
2020/05/13 Python
在tensorflow实现直接读取网络的参数(weight and bias)的值
2020/06/24 Python
Grid 宫格常用布局的实现
2020/01/10 HTML / CSS
HTML5 Web存储方式的localStorage和sessionStorage进行数据本地存储案例应用
2012/12/09 HTML / CSS
世界上最大的乐器零售商:Guitar Center
2017/11/07 全球购物
德国户外装备、登山运动和攀岩商店:tapir store
2020/02/12 全球购物
求职简历自荐信范文
2013/10/21 职场文书
2014入党积极分子破除“四风”思想汇报
2014/09/14 职场文书
清洁工个人总结
2015/03/04 职场文书
恋恋笔记本观后感
2015/06/16 职场文书
小学总务工作总结
2015/08/13 职场文书
Android 界面一键变灰 深色主题工具类
2022/04/28 Java/Android