微信小程序-传递数据父传子

简介: 在我们自定义组件当中,有时候组件的内容也许的通过 JS 文件里面的 data 数据进行展示的,我们先简单的来搭建一下这个结构:

在我们自定义组件当中,有时候组件的内容也许的通过 JS 文件里面的 data 数据进行展示的,我们先简单的来搭建一下这个结构:

<!-- 
c-example.wxml
 -->
<view class="container">
  <view>{{title}}</view>
  <view>{{msg}}</view>
</view>


然后是我们的 JS 文件:

// c-example.js
Component({
  data: {
    title: 'BNTang',
    msg: 'hello world'
  },
})


这个时候我们去首页页面,多复制几个出来:

<!-- 
index.wxml
 -->
<myExample/>
<myExample/>
<myExample/>
<myExample/>
<myExample/>


总共是 5 个,这个时候我有个需求,想让 title 和 msg 分别展示不同的内容,就是说每一个的 myExample 组件的 title 与 msg 内容都是不一样的,这个时候该如何进行实现呢,可能大家也有点思路了,我们将我们不一样的 title 与 msg 的内容告诉 myExample 不就行了吗,雀实是这样子的,那么该如何告诉它呢,这个时候就有了我们的组件传递数据这么个知识点的介绍了,这里介绍的是父传子


官方文档:https://developers.weixin.qq.com/miniprogram/dev/framework/custom-component/

2105804-20230514152139662-1740874724.png


好,看了官方文档的介绍之后我们直接改造下我们的自定义组件的JS文件定义两个属性用于外部传入:

// c-example.js
Component({
  /**
   * 组件的属性列表
   */
  properties: {
    headTitle: {
      type: String,
      value: 'default headTitle value',
    },
    context: {
      type: String,
      value: 'default context value',
    },
  }
})


在更改我们页面的显示代码:

<!-- 
c-example.wxml
 -->
<view class="container">
  <view>{{headTitle}}</view>
  <view>{{context}}</view>
</view>


更改我们首页使用 c-example 的代码传入需要显示的数据:

<!-- 
index.wxml
 -->
<myExample headTitle="BNTang1" context="BNTnag 1 context"/>
<myExample headTitle="BNTang2" context="BNTnag 2 context"/>
<myExample headTitle="BNTang3" context="BNTnag 3 context"/>


2105804-20230514152644820-410607261.png

过程分析:

2105804-20230514152726505-299916933.png

总结

  • 如何给组件传递数据:通过组件的 properties 属性
  • properties 支持的数据类型,String/Number/Boolean/Object/Array/null(不限制类型)
目录
相关文章
|
5天前
|
小程序 JavaScript
小程序中的数据双向绑定和Vue的有什么区别
小程序中的数据双向绑定和Vue的有什么区别
|
5天前
|
存储 JavaScript 小程序
jQuery、vue、小程序、uni-app中的本地存储数据和接受数据是什么?
jQuery、vue、小程序、uni-app中的本地存储数据和接受数据是什么?
16 0
|
5天前
|
小程序 JavaScript
【微信小程序】-- 自定义组件 - 数据监听器 (三十四)
【微信小程序】-- 自定义组件 - 数据监听器 (三十四)
|
5天前
|
存储 小程序 JavaScript
【微信小程序】-- 自定义组件 -- 数据、方法和属性(三十三)
【微信小程序】-- 自定义组件 -- 数据、方法和属性(三十三)
|
5天前
|
JSON 小程序 数据安全/隐私保护
小程序动态调试-解密加密数据与签名校验
本文主要讲解微信小程序加密、验签的情况下如何进行动态调试已获取签名以及加密信息
|
5天前
|
小程序 JavaScript
【微信小程序】之自定义三宫格一行展示row-grid(简单数据看板)
【微信小程序】之自定义三宫格一行展示row-grid(简单数据看板)
|
5天前
|
小程序 JavaScript 前端开发
微信小程序全栈开发中的数据交互与渲染优化
【4月更文挑战第12天】本文探讨了微信小程序全栈开发中的数据交互与渲染优化,旨在提升小程序性能和用户体验。数据交互涉及GET、POST、PUT和DELETE请求,优化措施包括使用HTTPS、数据压缩、缓存及限流。渲染优化则涵盖虚拟DOM、减少DOM操作、组件化和模板使用,以及WXSS样式设计和媒体查询。利用性能监控工具可识别并优化性能瓶颈。开发者应综合运用这些策略,持续优化小程序。
|
5天前
|
小程序
【微信小程序】-- 自定义组件 - 数据监听器 - 案例 (三十五)
【微信小程序】-- 自定义组件 - 数据监听器 - 案例 (三十五)
|
5天前
|
小程序 前端开发 程序员
【微信小程序】-- 网络数据请求(十九)
【微信小程序】-- 网络数据请求(十九)
|
5天前
|
存储 小程序 数据库
零基础开发小程序第五课-修改数据
零基础开发小程序第五课-修改数据

热门文章

最新文章