HarmonyOS NEXT 学习笔记4--双向绑定$$
1.代码:
@Entry
@Component
struct Page_checkbox {
@State
isChecked:boolean = true
build() {
Column() {
Text(this.isChecked + '')
Checkbox()
// .shape(CheckBoxShape.ROUNDED_SQUARE)// 这里有坑,编译器会报错
.select($$this.isChecked)// 加上双向绑定$$
}
.height('100%')
.width('100%')
}
}
2.效果:
3.不用$$,就用onChange写法:
@Entry
@Component
struct Page_checkbox {
@State
isChecked:boolean = true
build() {
Column() {
Text(this.isChecked + '')
Checkbox()
// .shape(CheckBoxShape.ROUNDED_SQUARE)// 这里有坑,编译器会报错
// .select($$this.isChecked)// 加上双向绑定$$ 方式1
.select(this.isChecked) // 方式2 用onchange
.onChange((value)=>{
this.isChecked = value
})
}
.height('100%')
.width('100%')
}
}
3.1 效果:
4.说明onChange和$$关系:
- $$ 就是为了替换onChange
5. 总结:
- 双向数据绑定 $$ = 1. 数据驱动视图@state 2.视图更新数据(事件)
6.注意:
- interface的属性,不能直接绑定。它这个双向绑定只更新第一层。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步