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 Toggle组件onChange方法手动触发
332浏览 • 1回复 待解决
HarmonyOS RichEditor组件能够像TextArea组件的onChange方法一样获取文字变化吗?
609浏览 • 1回复 待解决
harmonyos组件build方法中支持switch语句吗?
324浏览 • 1回复 待解决
如何实现一个监听网络变化的方法
795浏览 • 1回复 待解决
HarmonyOS 在Page内使用方法调用方法异常
950浏览 • 1回复 待解决
系统日历方法使用会抛异常
598浏览 • 0回复 待解决
HarmonyOS Radio的onChange方法只会触法一次
106浏览 • 1回复 待解决
HarmonyOS 网络变化监听失效
171浏览 • 1回复 待解决
HarmonyOS onMemoryLevel监听内存变化
54浏览 • 1回复 待解决
使用@Observed/@ObjectLink监听多层状态的变化
1765浏览 • 1回复 待解决
window.on监听方法的使用
400浏览 • 1回复 待解决
HarmonyOS page如何监听数据变化
206浏览 • 1回复 待解决
HarmonyOS 装饰器数据变化监听
58浏览 • 1回复 待解决
HarmonyOS 音频设备变化监听
379浏览 • 1回复 待解决
HarmonyOS 如何监听组件自身尺寸变化
251浏览 • 1回复 待解决
HarmonyOS 如何监听某个变量是否变化
186浏览 • 1回复 待解决
HarmonyOS 如何监听系统主题变化
243浏览 • 1回复 待解决
如何监听系统应用异常
1913浏览 • 1回复 待解决
如何监听window大小的变化
675浏览 • 1回复 待解决
如何监听窗口大小的变化
2496浏览 • 1回复 待解决
HarmonyOS 如何监听修改系统时间的变化?
227浏览 • 1回复 待解决
HarmonyOS 如何监听text文本变化的行数?
538浏览 • 0回复 待解决
HarmonyOS 如何监听到音频焦点的变化
269浏览 • 1回复 待解决
HarmonyOS 如何监听数组元素属性的变化?
777浏览 • 1回复 待解决
HarmonyOS 如何监听折叠屏折叠状态变化
288浏览 • 1回复 待解决
代码中的isCheck与data中的isAcceptInfo绑定,无法直接禁止掉isAcceptInfo 变化引起的onChange事件。可以设置一个与isAcceptInfo不同的UI状态变量,用于控制switch组件的显示。这个UI状态变量只在用户与switch组件交互时更新,参考如下: