HarmonyOS 请问@Extended装饰器为什么不允许export

希望自定义NavDestination的onShown行为,并且应用到所有的Page上,但是文档显示Extend无法导出,那岂不是只能每一个页面去copy一份?

@Extend(NavDestination) function fancy(param:()=>void){
  .onShown(()=>{
    param()
  })
}

请问这个场景怎么解决呢?

HarmonyOS
1天前
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
superinsect

1.@Styles或@Extend目前不支持export导出,后续这两个装饰器不会继续演进。

2.推荐使用新的样式复用方法,通过attributeModifier属性动态的设置组件,通过自定义class继承对应基础组件的Modifier,在class中设置复用的属性,对应class也没有无法export的限制。attributeModifier参考文档:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/ts-universal-attributes-attribute-modifier-V5

分享
微博
QQ
微信
回复
20h前
相关问题
HarmonyOS ArkTS不允许any了
0浏览 • 0回复 待解决
ArkTSCheck检查不允许使用any
1浏览 • 0回复 待解决
@Track装饰什么作用?
767浏览 • 1回复 待解决