HarmonyOS 下面demo为什么点击不刷新?
@Observed
class HSItemData{
choose:boolean = false
}
@Observed
class HSTestDataModel{
itemArray:Array<HSItemData> = new Array()
}
@Component
struct HSCell{
@ObjectLink itemData:HSItemData
tapEvent?:(itemData:HSItemData)=>void
build() {
Row(){
if (this.itemData.choose){
Text("选中")
}
else {
Text("未选中")
}
}
.onClick(()=>{
if (this.tapEvent){
this.tapEvent(this.itemData)
}
})
.height(68)
}
}
@Entry({ routeName: 'HSTestPage' })
@Component
export struct HSTestPage {
listeners: DataChangeListener[] = []
@State dataModel :HSTestDataModel = new HSTestDataModel()
aboutToAppear(): void {
for (let i = 0; i < 10;i ++){
this.dataModel.itemArray.push(new HSItemData())
}
}
build() {
Column(){
List(){
LazyForEach(this,(item: HSItemData, index)=>{
HSCell({itemData:item,tapEvent:(item)=>{
item.choose = !item.choose
}})
})
}
}
.height("100%")
}
totalCount() {
return this.dataModel.itemArray.length
}
getData(index: number) {
return this.dataModel.itemArray[index]
}
registerDataChangeListener(listener: DataChangeListener) {
if (this.listeners.indexOf(listener) < 0) {
this.listeners.push(listener);
}
}
unregisterDataChangeListener(listener: DataChangeListener) {
const pos = this.listeners.indexOf(listener);
if (pos >= 0) {
this.listeners.splice(pos, 1);
}
}
//刷新页面
reloadTableView(): void {
this.listeners.forEach(listener => {
listener.onDataReloaded();
})
}
}
上述demo为什么点击不刷新?
HarmonyOS
赞
收藏 0
回答 1
待解决
相关问题
Left、Top为什么不生效?
691浏览 • 1回复 待解决
butoon,这样设置borderColor为什么不生效?
2309浏览 • 0回复 待解决
HarmonyOS使用@ObjectLink 数据不刷新
571浏览 • 2回复 待解决
Span设置backGroundColor不生效是为什么?
393浏览 • 1回复 待解决
HarmonyOS 为什么@Link的属性变更不会触发UI刷新?
192浏览 • 1回复 待解决
HarmonyOS 为什么搞个这么复杂的单词,为什么不简化一些HmOS就很好啊
6414浏览 • 4回复 待解决
HarmonyOS IDataSource数据源刷新后,列表为不刷新
247浏览 • 1回复 待解决
为什么说二级索引不唯一,不唯一是指什么不唯一呢?
2377浏览 • 1回复 待解决
为什么Web组件的onKeyEvent键盘事件不生效
2141浏览 • 1回复 待解决
http文档中,为什么成功不销毁,而异常需要销毁?
706浏览 • 1回复 待解决
IF条件变化后UI不刷新
643浏览 • 1回复 待解决
为什么linearGradient 颜色渐变在rect 图形上不生效?
2316浏览 • 1回复 待解决
HarmonyOS 状态变量不刷新问题
323浏览 • 1回复 待解决
HarmonyOS 基于pulltorefresh依赖,提供下拉刷新二楼demo
298浏览 • 1回复 待解决
mysql 通讯协议为什么不直接采用http而是自己分装 TCP 呢?
3403浏览 • 1回复 待解决
HarmonyOS 子组件中点击事件交给父组件处理,在父组件种修改数据后子组件不刷新
317浏览 • 1回复 待解决
状态装饰器 ui不刷新的问题
2347浏览 • 1回复 待解决
键盘移动焦点对象按下enter,为什么不会触发点击事件
1837浏览 • 1回复 待解决
为什么不建议使用@StorageLink双向同步机制实现事件通知呢?
255浏览 • 1回复 待解决
HarmonyOS LazyForEach修改数据源不刷新问题
160浏览 • 1回复 待解决
HarmonyOS能否实现服务卡片刷新卡片UI不拉起应用
387浏览 • 1回复 待解决
使用LazyForEach渲染语法渲染组件,UI不刷新。
907浏览 • 1回复 待解决
ReactNative框架, HarmonyOS目前仅支持新的Fabric框架, 为什么不选择支持老的框架的原因是什么?
933浏览 • 1回复 待解决
HarmonyOS 自定义dialog无法覆盖全屏覆盖底部短横条,下面有空白,导致可以穿透点击下面一层组件
564浏览 • 1回复 待解决
HarmonyOS 请提供一个自定义下拉刷新动画的demo
165浏览 • 1回复 待解决
您可参考以下代码: