组件的width属性缺省时是使用元素自身内容需要的宽度。开发自定义组件时,如何灵活切换子组件的width

组件的width属性缺省时是使用元素自身内容需要的宽度。开发自定义组件时,如何灵活切换子组件的width。

@Component 
export struct UPButton { 
  @Prop upWidth: number = 0 
 
  build() { 
    Button().width(this.upWidth) 
  } 
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.

预期效果是:外部既可以给子组件设置固定宽度,也可以让子组件使用自身元素内部需要的宽度。

HarmonyOS
2024-06-03 22:26:44
浏览
收藏 0
回答 1
回答 1
按赞同
/
按时间
pfuchenlu

当前是声明式UI范式,建议使用条件渲染语句,进行自动填充width和外部传入width的区分。

export struct UPButton { 
  @Prop upWidth: number = 0 
 
  build() { 
    if (this.upWidth > 0) { 
      Button().width(this.upWidth) 
    } else { 
      Button() 
    } 
  } 
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
分享
微博
QQ
微信
回复
2024-06-04 21:48:47
相关问题
组件属性width是否支持使用变量定义
1051浏览 • 1回复 待解决
组件宽度width是否包含borderWidth
1115浏览 • 1回复 待解决
如何设置自定义组件height缺省
2402浏览 • 1回复 待解决
HarmonyOS text组件不设置width
760浏览 • 1回复 待解决
HarmonyOS 自定义组件使用
793浏览 • 1回复 待解决
自定义组件onMeasureSize使用
1316浏览 • 1回复 待解决