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的屬性,不能直接繫結。它這個雙向繫結只更新第一層。