在代码中判断是否是UIAbilityContext类型,通过引入common(import { common } from '@kit.AbilityKit')后仍然使用 UIAbilityContext 报错,使用代码如下
import { common } from '@kit.AbilityKit'
...
if (this.context instanceof common.UIAbilityContext) {
}
报错内容:
1 ERROR: ArkTS:ERROR File: /Users/john/Desktop/Projects/Harmony/ICC_GLDigitalKeySDK_15/Projects/GLDigitalKey15Demo/GLDigitalKey15/src/main/ets/Utils/BackgroundTaskLauncher.ets:41:33
Cannot use namespace 'common' as a value.
“instanceof”表达式右侧必须为“any”类型或可分配给“Function”接口类型的类型,只能判断new出来的对象。参考链接:
https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/typescript-to-arkts-migration-guide-V5\#部分支持instanceof运算符
而且这里为什么要判断context 是否为common.UIAbilityContext呢,一般是这个代码直接获取的。
这个代码获取到的即为common.UIAbilityContext类型,如果不是的话是会报错的。