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方法一样获取文字变化吗?
1527浏览 • 1回复 待解决
HarmonyOS Toggle组件onChange方法手动触发
1425浏览 • 1回复 待解决
harmonyos组件build方法中支持switch语句吗?
1203浏览 • 2回复 待解决
如何实现一个监听网络变化的方法
1584浏览 • 1回复 待解决
HarmonyOS 在Page内使用方法调用方法异常
2015浏览 • 1回复 待解决
HarmonyOS 网络变化监听失效
1014浏览 • 1回复 待解决
HarmonyOS onMemoryLevel监听内存变化
838浏览 • 1回复 待解决
系统日历方法使用会抛异常
1503浏览 • 1回复 待解决
使用@Observed/@ObjectLink监听多层状态的变化
2815浏览 • 1回复 待解决
window.on监听方法的使用
1035浏览 • 1回复 待解决
HarmonyOS Radio的onChange方法只会触法一次
955浏览 • 1回复 待解决
HarmonyOS 音频设备变化监听
1132浏览 • 1回复 待解决
HarmonyOS page如何监听数据变化
1002浏览 • 1回复 待解决
HarmonyOS 装饰器数据变化监听
780浏览 • 1回复 待解决
HarmonyOS 如何监听系统主题变化
1125浏览 • 1回复 待解决
HarmonyOS 如何监听某个变量是否变化
1051浏览 • 1回复 待解决
HarmonyOS 如何监听组件自身尺寸变化
931浏览 • 1回复 待解决
鸿蒙如何监听键盘高度变化
512浏览 • 1回复 待解决
如何监听window大小的变化
1498浏览 • 1回复 待解决
如何监听窗口大小的变化
3677浏览 • 1回复 待解决
如何监听系统应用异常
2612浏览 • 1回复 待解决
HarmonyOS监听组件参数变化,未变更问题
1305浏览 • 1回复 待解决
HarmonyOS 如何监听折叠屏折叠状态变化
1497浏览 • 1回复 待解决
HarmonyOS 如何监听数组元素属性的变化?
1939浏览 • 1回复 待解决
HarmonyOS 如何监听修改系统时间的变化?
1257浏览 • 1回复 待解决
代码中的isCheck与data中的isAcceptInfo绑定,无法直接禁止掉isAcceptInfo 变化引起的onChange事件。可以设置一个与isAcceptInfo不同的UI状态变量,用于控制switch组件的显示。这个UI状态变量只在用户与switch组件交互时更新,参考如下: