如何动态设置组件属性的值

有一些组件的属性并不是一成不变的,有时候需要根据某些业务场景和条件来判断该属性的值为多少,如何来动态设置组件属性的值。

HarmonyOS
2024-06-04 23:52:48
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
koarla

可以使用if/else渲染对应状态下组件的属性值。或者使用三元表达式.

Text('test') 
  .backgroundColor(this.flag ? Color.Red : Color.Transparent) 
  .onClick(() => this.flag = !this.flag)

示例代码:

@Entry 
@Component 
struct Index { 
  @State message: string = 'Hello World'; 
  @State widthSize: number = 400; 
  @State heightSize: number = 200; 
 
  build() { 
    Row() { 
      Column() { 
        Text(this.message) 
          .fontSize(50) 
          .fontWeight(FontWeight.Bold) 
        Button() 
          .onClick(() => { 
            this.widthSize = 800; 
            this.heightSize = 400; 
          }) 
      } 
      .width(this.widthSize) 
      .backgroundColor(Color.Orange) 
    } 
    .height(this.heightSize) 
  } 
}

文档链接:

条件渲染

分享
微博
QQ
微信
回复
2024-06-05 20:11:39
相关问题
如何设置组件最大最小宽度高度
2929浏览 • 1回复 待解决
list-item 根据boolean属性 动态设置class
4706浏览 • 1回复 待解决
组件如何动态设置全局唯一ID?
6794浏览 • 1回复 待解决
组件设置visibility属性回调
376浏览 • 2回复 待解决
Web组件domStorageAccess属性设置
2099浏览 • 1回复 待解决
List组件initialIndex属性设置不生效
2060浏览 • 1回复 待解决
HarmonyOS 组件设置属性无效果
182浏览 • 1回复 待解决
如何为网页设置单个Cookie
228浏览 • 1回复 待解决
Refresh组件不支持设置nestedScroll属性
1746浏览 • 1回复 待解决
如何获取组件属性信息
1827浏览 • 1回复 待解决
SideBarContainer如何设置controlButton属性
1851浏览 • 1回复 待解决