小程序组件间传值

1、属性绑定(Props):

父组件通过在子组件标签上设置属性的方式向子组件传值。

子组件通过properties定义接收的属性
父组件:

wxml

bash 复制代码
   <child-component title="{{parentData}}"></child-component>

子组件:

js

bash 复制代码
   properties: {
     title: {
       type: String,
       value: ''
     }
   }

2、事件(event):

子组件触发事件,将数据通过事件参数传递给父组件
子组件

wxml

bash 复制代码
<view wx:if="{{outOperateStatus}}" class="single-confirm-btn {{!isStock ? 'disabled' : ''}}" bindtap="customEvent">
      确定
    </view>

js

bash 复制代码
methods:{
	customEvent(){
		this.triggerEvent('customEvent', {data: 'someData'});
	}
}

父组件:

wxml

bash 复制代码
   <child-component bind:customEvent="handleChildEvent"></child-component>
   //bind:可以省略不写,是冒泡事件
   //阻止冒泡(捕获事件):catch:customEvent=

js

bash 复制代码
   methods: {
     handleChildEvent(e) {
       const dataFromChild = e.detail.data;
     }
   }

3、全局变量

利用小程序的全局对象app.globalData进行跨页面或跨组件的数据共享

app.js:

bash 复制代码
   App({
     globalData: {
       sharedData: 'Hello'
     }
   });

获取:

bash 复制代码
   const app = getApp();
   const sharedData = app.globalData.sharedData;

4、URL参数:

通过页面跳转时在URL中携带参数

bash 复制代码
   wx.navigateTo({
     url: '/path/to/page?param=value'
   });

接收:

bash 复制代码
   onLoad(options) {
     const param = options.param;
   }

5、setData与this.selectComponent

在某些场景下,可以通过this.selectComponent获取子组件实例,直接调用子组件的方法或修改子组件的data
父组件:

bash 复制代码
   const child = this.selectComponent('#child-component');
   child.updateData(someData);

子组件:

bash 复制代码
   methods: {
     updateData(newData) {
       this.setData({
         data: newData
       });
     }
   }
相关推荐
万岳科技系统开发1 小时前
外卖配送系统开发中的核心模块拆解与技术选型思路
小程序·开源
低代码布道师9 小时前
教培管家第11讲:班级管理——教务系统的“集成枢纽”
低代码·小程序·云开发
数字游民952710 小时前
小程序上新,猜对了么更新110组素材
人工智能·ai·小程序·ai绘画·自媒体·数字游民9527
小小王app小程序开发13 小时前
盲盒随机赏小程序核心玩法拆解与运营逻辑分析
大数据·小程序
说私域13 小时前
AI智能名片链动2+1模式小程序在消费者商家全链路互动中的应用研究
大数据·人工智能·小程序·流量运营·私域运营
不爱学习小趴菜13 小时前
uniapp微信小程序无法屏蔽右上角胶囊按钮(...)问题解决方案
微信小程序·小程序·uni-app
StarChainTech14 小时前
打造火爆的线上推币机APP:一站式合规娱乐解决方案
大数据·人工智能·物联网·小程序·娱乐·软件需求·共享经济
plmm烟酒僧14 小时前
《微信小程序demo开发》第一部分-编写页面逻辑
javascript·微信小程序·小程序·html·微信开发者工具·小程序开发
2501_9160088914 小时前
iOS 开发助手工具,设备信息查看、运行日志、文件管理等方面
android·ios·小程序·https·uni-app·iphone·webview
EstherNi15 小时前
小程序中,下拉多选的组件,有写死的三级下拉,样式需要修改
javascript·小程序·vue