HarmonyOS ComposeListItem使用switch监听onChange方法变化异常
ComposeListItem({
contentItem: ({
iconStyle: IconType.SYSTEM_ICON,
icon: $r("app.media.set_push_setup"),
primaryText: '个性化推送开关',
}),
operateItem: ({
switch: {
isCheck: this.data.isAcceptInfo == 0,
onChange: (isCheck: boolean) => {
if (this.hasData) {
this.data.isAcceptInfo = isCheck ? 0 : 1
this.requestPushSwitch(this.data.isAcceptInfo)
}
}
},
})
})
//数据请求返回
MineModel.getSetInfo((data) => {
param.success?.()
this.data = data
this.viewState = ViewProgressState.SUCCESS
this.hasData = true
}, (_code) => {
param.error?.()
this.viewState = ViewProgressState.SUCCESS
})
在数据请求结果回来后,如果this.data.isAcceptInfo从默认值1改为了0,那么这个时候会触发onChange方法,有什么方法可以避免这个数据请求结果回来的变化?
HarmonyOS
赞
收藏 0
回答 1
待解决
相关问题
HarmonyOS RichEditor组件能够像TextArea组件的onChange方法一样获取文字变化吗?
588浏览 • 1回复 待解决
HarmonyOS Toggle组件onChange方法手动触发
280浏览 • 1回复 待解决
harmonyos组件build方法中支持switch语句吗?
305浏览 • 1回复 待解决
如何实现一个监听网络变化的方法
793浏览 • 1回复 待解决
HarmonyOS 在Page内使用方法调用方法异常
940浏览 • 1回复 待解决
系统日历方法使用会抛异常
586浏览 • 0回复 待解决
HarmonyOS 网络变化监听失效
149浏览 • 1回复 待解决
HarmonyOS onMemoryLevel监听内存变化
47浏览 • 1回复 待解决
使用@Observed/@ObjectLink监听多层状态的变化
1756浏览 • 1回复 待解决
HarmonyOS Radio的onChange方法只会触法一次
106浏览 • 1回复 待解决
window.on监听方法的使用
389浏览 • 1回复 待解决
HarmonyOS 音频设备变化监听
363浏览 • 1回复 待解决
HarmonyOS page如何监听数据变化
181浏览 • 1回复 待解决
HarmonyOS 装饰器数据变化监听
49浏览 • 1回复 待解决
HarmonyOS 如何监听系统主题变化
215浏览 • 1回复 待解决
HarmonyOS 如何监听某个变量是否变化
162浏览 • 1回复 待解决
HarmonyOS 如何监听组件自身尺寸变化
240浏览 • 1回复 待解决
如何监听系统应用异常
1911浏览 • 1回复 待解决
如何监听window大小的变化
641浏览 • 1回复 待解决
如何监听窗口大小的变化
2464浏览 • 1回复 待解决
HarmonyOS监听组件参数变化,未变更问题
632浏览 • 1回复 待解决
HarmonyOS 如何监听折叠屏折叠状态变化
256浏览 • 1回复 待解决
HarmonyOS 如何监听text文本变化的行数?
514浏览 • 0回复 待解决
HarmonyOS 如何监听到音频焦点的变化
233浏览 • 1回复 待解决
HarmonyOS 如何监听数组元素属性的变化?
742浏览 • 1回复 待解决
代码中的isCheck与data中的isAcceptInfo绑定,无法直接禁止掉isAcceptInfo 变化引起的onChange事件。可以设置一个与isAcceptInfo不同的UI状态变量,用于控制switch组件的显示。这个UI状态变量只在用户与switch组件交互时更新,参考如下: