代码正常,IDE报红是怎么回事?

阅读 510
2 个回答

升级到最新版本IDE后已正常。

看报错信息的话,是装饰器修饰的函数类型ArkTS 声明不对。
预期的是函数返回类型为 void or any,但实际因为你的函数返回类型没声明,并且有return值,ArkTS隐式推断了一个 void|TypedPropertyDescriptor类型。
给函数加上返回类型声明试试:

@Concurrent
public funcA():any{
    return value
}

PS: 有一说一,这个修饰器函数为啥预期返回类型要求是 any? 神奇的规定

本文参与了思否 HarmonyOS 技术问答马拉松,欢迎正在阅读的你也加入。
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进