事件方法

更新时间:2023-10-12 08:00:24下载pdf

本文介绍常用的事件方法。

监听方法

请求参数

参数 数据类型 说明 是否必填
yourEventName string 事件名
yourHandler function 监听成功触发的回调

请求示例

import { Utils } from "tuya-panel-kit"; TYSdk.event.on(yourEventName, yourHandler); // 开始监听事件 TYSdk.event.off(yourEventName, yourHandler); // 取消监听事件 TYSdk.event.emit(yourEventName, yourHandler); // 主动触发事件

常用事件名

/** * @desc * type: dpData 设备状态变更通知,payload 为更新的 DP 状态 * type: devInfo 设备信息变更通知,payload 为 devInfo * type: deviceOnline 设备是否在线通知,payload 为 boolean */ on( event: 'deviceDataChange', callback: (data: { type: 'dpData' | 'devInfo' | 'deviceOnline'; payload: Record<string, DpValue> | DevInfo | boolean; }) => void, ): void; /** * @desc app 网络状态变更通知 */ on(event: 'networkStateChange', callback: (data: { appOnline: boolean }) => void): void; /** * @desc 云定时状态变更通知 */ on(event: 'linkageTimeUpdate', callback: (data: {}) => void): void; /** * @desc 设备局域网在线状态变更通知 */ on(event: 'deviceLocalStateChange', callback: (data: { state: boolean }) => void): void; /** * @desc 蓝牙状态变更通知 */ on(event: 'bluetoothChange', callback: (value: boolean) => void): void; /** * @desc NavigatorLayout 路由即将渲染 */ on(event: 'NAVIGATOR_ON_WILL_FOCUS', callback: (route: DeprecatedNavigatorRoute) => void): void; /** * @desc NavigatorLayout 路由完成渲染 */ on(event: 'NAVIGATOR_ON_DID_FOCUS', callback: (route: DeprecatedNavigatorRoute) => void): void;

注意:在执行 componentWillUnmount 时,取消监听事件。