位置: IT常识 - 正文

微信小程序父子组件之间传值(微信小程序父子通信)

发布时间:2024-01-17
微信小程序父子组件之间传值 父子组件之间传值

推荐整理分享微信小程序父子组件之间传值(微信小程序父子通信),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:微信小程序父子组件传参,微信小程序父子组件,微信小程序父传子,微信小程序父子通信,微信小程序父子组件传参,微信小程序父子通信,微信小程序父子通信,微信小程序父子通信,内容如对您有帮助,希望把文章链接给更多的朋友!

组件之间传值有两种,一种是父向子传值,另外一种是子向父传值

先说一下大致的区别吧…

区别:

父向子传值使用的是属性绑定,子组件中 的 properties 对象 进行接收父组件传递过来的值子向父传值使用的是自定义事件,父组件通过自定义事件中的 事件对象e 来接收子组件传递过来的值父向子传值

首先我们在我们的小程序中创建一个 components 文件夹 用来存放我们的子组件。创建以后我们就可以在 components 文件夹下创建我们的子组件 child , 当然创建成任何名字都可以,我在这里创建成 child ,如下图: 创建好以后就是引入了,把这个子组件 child 引入到我们的 父组件 index 首页中去。 这里说明一下,我在这里一共就创建了两个页面,一个是 pages 节点下的 index 路由页面,以及 components 节点下的 child 组件。

那么我们怎么引入呢?(原则在父组件的 json 文件中的 usingComponents节点下 引入)如下:

{ "usingComponents": { "child":"../../components/child/child" }}

引入以后怎么把子组件的内容渲染到父组件上呢?… :

也很简单:上面我们引入的时候,看上面代码:给组件起的自定义名字是 child 那么 我们渲染的时候就 在 index 父组件 里写上一组 <child><child> 标签即可,就可以把子组件渲染到 父组件中…

此时我们父子页面都有了,那么就可以进行传值了…

我们在父组件的数据data 中定义两个数据,name:'张三', age:23, 把这个数据传递给 子组件 child

在这里我们分三个步骤:

1.在 child 标签中 使用属性绑定的方式 把父组件的值绑定一下 <child name="{{ name }}" age="{{ age }}" ></child>,此时父组件的操作已经ok了,接下来看子组件的操作… 2.在子组件的 js 文件的 properties 对象中接收父组件传递过来的值

// 接受父组件传递过来的值 properties: { name:{ type:String, value:'我是默认值:苹果' }, age:{ type:Number, value:'我是默认值: 100' } },微信小程序父子组件之间传值(微信小程序父子通信)

3.此时子组件 child 已经接收到了 父组件传递过来的值 ,我们可以在 子组件的 wxml 页面中 引用一下这个值看看是否传递成功了

<!-- 父向子传值 --><view> 这是父组件传递过来的值 name: {{ name }}-----age {{age}}</view>

index 父页面 显示的结果如下:

显然传递成功… >^<

接下来说说子向父传值

子向父传值

我们先在子组件的data 数据中 定义一个数据 msg

data: { msg:'我是子组件的值' },

接下来就开始传值,传值时间上来分有两种, 第一种在组建的生命周期中,也就是页面一加载就把组件中的值传过去 第二种通过事件绑定的方式传值

先说第二种:(时间绑定的方式):

1.在子组件wxml 中放一个按钮,并给他绑定一个事件 send

<!-- 点击按钮向父组件传值 --><button bindtap="send">点击按钮向父组件传值</button>

2.在child.js中定义一下这个send ,并写入一下传值的代码:

methods: { send(){ this.triggerEvent('send',this.data.msg) } },

传值使用的是 :this.triggerEvent() ,上面代码中 send 就是传递给父组件的自定义事件名称,接下来就在父组件中定义一下这个自定义事件bindsend="send"

<child name="{{ name }}" age="{{ age }}" bindsend="send"></child>

定义好以后,在 父组件的 js 文件中,定义一下send ,并且给send 方法 ,传递一个 事件对象 e

// 父组件接受子组件传递过来的值 send(e){ console.log(e.detail); },

子组件传递过来的值就存放在 e.detail 中…

本文链接地址:https://www.jiuchutong.com/zhishi/298528.html 转载请保留说明!

上一篇:get请求和post请求的区别(全面讲解)(get请求与post)

下一篇:vue面试题八股文简答大全 让你更加轻松的回答面试官的vue面试题(vue面试题视频)

  • 没有销项购买税金税盘如何做账
  • 固定资产的进项税额不允许抵扣的增值税属于
  • 税务师考试报名
  • 银行存款支付运费会计科目
  • 股票发行的佣金计入什么科目
  • 通用机打发票怎么红冲
  • 税费漏报
  • 同一控制下资产收购
  • 摊销保险费会计分录怎么写
  • 补开的银行手续费发票怎么做账
  • 企业认缴出资怎么做账
  • 律师要钱吗
  • 诉讼管辖分为
  • 高薪员工如何降职
  • 没有道路许可证的车子怎么处罚
  • 进项税额转出凭证怎么做
  • 增值税专用发票和普通发票的区别
  • 二手房个人所得税和增值税
  • 每月的话费到下个月会扣吗
  • windows10如何开启远程
  • 关闭通知横幅
  • linux如何使用
  • php字符串定义的三种方式
  • php require的用法
  • 提示内存不足
  • php笔记程序
  • PHP:iconv_strlen()的用法_iconv函数
  • 母子公司吸收合并税务处理
  • 防伪码查一次还能查第二次吗
  • 坏账准备的借贷方向表示什么意思
  • 快递行业一般纳税人税率是多少
  • 改进的拼音
  • web自动化测试平台
  • trainer 平替
  • html5简单小游戏代码
  • HTTP 协议
  • 微擎框架是开源的吗
  • 工业总产值和营业收入区别
  • 现金流动负债比率和流动比率一样吗
  • 利息收入凭证会计分录
  • 出入库单可以用机打的吗
  • db2教程
  • 帝国cms8.0版
  • 电商企业快递费怎么算
  • 现金股利要交税
  • 企业长期股权投资增加说明什么
  • 企业注销指的是哪些
  • 少数股东损益会出现负数吗
  • 一般贸易出口报关的详细流程案例
  • 外币收款怎么做账
  • 材料暂估入库的账务处理
  • 贴现法付息实际利率
  • 公司股权作价转让会计分录案例
  • 当月暂估入账跨月怎么算
  • 湖南残保金优惠政策
  • 税控系统全额抵扣增值税申报
  • 如何在电子税务局变更办税人员
  • 个人社保代扣业务是什么意思
  • 固定资产的税法处理与会计处理的差异50字
  • 通过实例认识MySQL中前缀索引的用法
  • mysql5.7.23
  • mysql 通过拷贝数据文件的方式进行数据库迁移实例
  • linux 切文件
  • xp系统弹出广告怎么处理
  • 苹果mac共享改名
  • 装win7系统对电脑有什么要求
  • 检查linux是否安装了,可用哪些命令
  • js导出excel文件前端插件
  • accessviolation怎么解决
  • html页面头部
  • vue异步加载第三方库
  • shell脚本怎么进入指定目录
  • jquery常用的事件绑定函数有哪些
  • package.json里面的配置
  • substrate框架原理
  • 如何查询车辆购买的保险
  • 以划拨方式取得的土地使用权
  • 增值税专票红冲退税
  • 山西省税务
  • 小规模纳税人和一般纳税人的区别
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号