微信小程序 behaviors 组件之间数据共享

本文探讨了微信小程序中如何通过Behaviors来实现组件间的数据共享。Behavior类似于Vue的mixins,允许定义可复用的属性、数据和方法。每个组件可以引用多个Behavior,并遵循特定的同名字段覆盖和组合规则。详细介绍了创建Behavior的过程,包括创建Behavior的JS文件,并在组件中引入和使用。
摘要由CSDN通过智能技术生成

behavior被共享的属性、数据、方法等,类似vue中的 minx

  • behavior中, 也可以引用其他 behavior
  • 每个组件,可以引用多个 behavior
  • 同名字段的覆盖 和 组合规则:(3种)具体可参考文档 https://developers.weixin.qq.com/miniprogram/dev/framework/custom-component/behaviors.html
    1. 同名的数据字段(data)
    2. 同名的属性(properties) 和方法(methods)
    3. 同名的周期函数

创建behavior + 使用

  1. 创建behavior的js文件。(例如:myBehavior.js)
    // 创建behavior步骤:
    // 1.创建.js 文件。js文件中调用 behavior(),创建一个共享的 behavior 实例对象,供所有组件使用
    // 2.调用behavior的组件中,使用 require方法导入需要的behavior模块,const my_behavior= require('.js文件地址')
    module.exports = Behavior({
        // 属性节点
        properties: {
            favouriteSeason:{
                type:String,
                value:'夏天'
            }
        },
        
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
抖音小程序behaviors是一种行为的定义方式,可以将一些常用的行为抽象出来,然后在多个组件复用。通过behaviors,可以在组件定义一些公共的属性、方法和生命周期函数,然后在需要使用这些行为的组件引用该behaviors。引用\[1\]的文档提供了详细的步骤来配置behaviors。在父组件的js文件,可以定义一个函数,并通过自定义事件的形式传递给子组件\[2\]。在子组件的js文件,可以通过调用this.triggerEvent()方法将数据发送到父组件\[2\]。在父组件的js文件,可以通过e.detail获取子组件传递过来的数据\[2\]。此外,可以使用this.selectComponent()方法获取子组件的实例对象,从而直接访问子组件的任意数据和方法\[2\]。在小程序组件,可以使用data节点定义组件的私有数据,methods节点定义事件处理函数和自定义方法,properties节点定义组件的对外属性\[3\]。data更倾向于存储组件的私有数据,而properties更倾向于存储外界传递到组件的数据\[3\]。可以使用setData方法修改properties的值\[3\]。此外,小程序组件还支持数据监听器,用于监听和响应属性和数据字段的变化\[3\]。通过定义数据监听器,可以在属性或数据字段发生变化时执行特定的操作\[3\]。 #### 引用[.reference_title] - *1* [小程序 | 案例---自定义tabBar](https://blog.csdn.net/muziqwyk/article/details/127325168)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [小程序的自定义组件](https://blog.csdn.net/m0_58190023/article/details/129699536)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值