HarmonyOS 组件初始化参数

在组件内定义变量后,在初始化组件时对其进行赋值报错:

export struct HeaderView {
  @Param mobileNo: string = '';
  @Param closeMsg?: string = '';
  @Param isShowBack?: boolean = true;
  @Param isShowClose?: boolean = false;
  @Param isShowMore?: boolean = false;
  @Param title?: string | Resource = '';
  @Param backgroundC: Resource = $r('app.color.wp_white');
  onBackClick = () => {
  };
  onMoreClick = () => {
  };
  onCloseClick = () => {
  };
}
HeaderView({
  backgroundC: $r('app.color.wp_transparent'), onBackClick: () => {
    WpRouter.pop()
  }, title: $r('app.string.wp_mine_setting_account')
})
HarmonyOS
1天前
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
Heiang

从API12开始,在@ComponentV2装饰的自定义组件中支持使用@Param装饰器。也可以使用@prop,示例参考如下:

@Component
struct HeaderView {
  @Prop mobileNo: string = '11';
  closeMsg?: string = '333';
  isShowBack?: boolean = true;
  isShowClose?: boolean = false;
  isShowMore?: boolean = false;
  @Prop title?: string | Resource = '';
  onBackClick = () => {
  };
  onMoreClick = () => {
  };
  onCloseClick = () => {
  };
  click? = (data: number) => {
  };

  build() {
    Column() {
      Text(this.mobileNo)
      Text(this.title)
      Text(this.closeMsg)
      Text('点击子组件').onClick(() => {
        if (this.click != undefined) {
          this.click(123);
        }
      })
    }
  }
}

@Entry
@Component
struct Index {
  clickFunc(data: number) {
    console.log(data.toString())
  }

  build() {
    Column() {
      Text('parents')
      HeaderView({ mobileNo: '123456', title: '标题测试', click: (data: number): void => this.clickFunc(data) })
    }
  }
}
分享
微博
QQ
微信
回复
1天前
相关问题
HarmonyOS export struct的初始化参数
276浏览 • 1回复 待解决
HarmonyOS XComponent初始化
283浏览 • 1回复 待解决
HarmonyOS Component初始化问题
637浏览 • 1回复 待解决
HarmonyOS struct初始化方法
267浏览 • 1回复 待解决
HarmonyOS 应用RDB初始化示例
603浏览 • 1回复 待解决
HarmonyOS 推送服务初始化失败
12浏览 • 1回复 待解决
HarmonyOS 初始化EGL环境失败
189浏览 • 1回复 待解决
初始化安全相机的方法
603浏览 • 1回复 待解决
没法调试“已初始化”分支
440浏览 • 1回复 待解决
HarmonyOS 怎么监听Web初始化完成?
281浏览 • 1回复 待解决
rsa 公钥解密初始化报错
424浏览 • 1回复 待解决
关于初始化EGL环境相关问题
985浏览 • 1回复 待解决
HarmonyOS 如何动态对Class进行初始化
141浏览 • 1回复 待解决
HarmonyOS 如何进行全局初始化操作
199浏览 • 1回复 待解决
HarmonyOS 自定义弹窗初始化问题
21浏览 • 1回复 待解决