HarmonyOS 捕获异常再抛出为什么报错

public async put(key: string, value: string) {
  const store = await this.initManager();
  logger.debug('Succeeded in getting KVStore.');
  try {
    await store.put(key, value);
    logger.debug('Succeeded in putting data.');
  } catch (err) {
    logger.debug(`Failed to put data. Code:${err.code},message:${err.message}`);
    throw err
  }
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.

如以上代码,想在发生异常时能输出日志,但是并不处理理异常仍是向调用者抛出,ide提示throw err 报错致编译不通过。

"throw" statements cannot accept values of arbitrary types (arkts-limited-throw) <ArkTSCheck>
  • 1.
HarmonyOS
2024-12-23 15:23:22
浏览
收藏 0
回答 1
回答 1
按赞同
/
按时间
shlp

ArkTS只支持抛出Error类或其派生类的实例。禁止抛出其他类型(例如number或string)的数据,具体可以参考下:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/typescript-to-arkts-migration-guide-V5#限制throw语句中表达式的类型

分享
微博
QQ
微信
回复
2024-12-23 18:16:31
相关问题
ErrorManager捕获js异常
1423浏览 • 1回复 待解决
HarmonyOS可以全局捕获异常吗?
775浏览 • 1回复 待解决
HarmonyOS 捕获异常Invalid parameter value
877浏览 • 1回复 待解决
调用 window.getWindowAvoidArea 时抛出异常
2565浏览 • 1回复 待解决
如何捕获应用发生的异常
1310浏览 • 1回复 待解决
烧录捕获异常信息,怎么解决?
9369浏览 • 2回复 待解决
Checkstyle插件使用中为什么报错
9210浏览 • 1回复 已解决
首选项存储问题,为什么报错
1096浏览 • 1回复 待解决