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

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

@Component 
export struct UPButton { 
  @Prop upWidth: number = 0 
 
  build() { 
    Button().width(this.upWidth) 
  } 
}

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

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() 
    } 
  } 
}
分享
微博
QQ
微信
回复
2024-06-04 21:48:47
相关问题
组件属性width是否支持使用变量定义
365浏览 • 1回复 待解决
如何设置自定义组件height缺省
1778浏览 • 1回复 待解决
组件宽度width是否包含borderWidth
536浏览 • 1回复 待解决
自定义组件onMeasureSize使用
277浏览 • 1回复 待解决
swiper组件如何实现自定义切换动画
622浏览 • 1回复 待解决
设置组件宽度不超出父组件
467浏览 • 1回复 待解决
HarmonyOS如何自定义组件Controller?
202浏览 • 1回复 待解决
自定义组件是否支持renderFit属性
1736浏览 • 1回复 待解决