HarmonyOS 新API属性不能被定义为undefined吗?

有一个工程,上面的的属性定义是这样的

import camera from '@ohos.multimedia.camera'; 
 
export default class CameraService { 
  private cameraMgr: camera.CameraManager = undefined; 
  private camerasArray: Array<camera.CameraDevice> = undefined; 
  private cameraInput: camera.CameraInput = undefined; 
  private previewOutput: camera.PreviewOutput = undefined; 
  private previewOutput2: camera.PreviewOutput = undefined; 
  …… 
  setImageTest(imageSet: Resource): Uint8Array { 
    let imageBuffer: Uint8Array; 
    try { 
      imageBuffer = this.context.resourceManager.getMediaContentSync(imageSet.id); // 默认屏幕密度 
    } catch (error) { 
      let code = (error as BusinessError).code; 
      let message = (error as BusinessError).message; 
      console.error(`getMediaContentSync failed, error code: ${code}, message: ${message}.`); 
    } 
    Logger.info(TAG, `imageBuffer = ${imageBuffer}`); 
    return imageBuffer; 
  }

然后编译就报了很多错误,其中这两种最多

Type 'undefined' is not assignable to type 'CameraManager'.  Variable 'imageBuffer' is used before being assigned.

他们这个项目 build-profile.json5里本来写的是“runtimeOS”: “OpenHarmony”但是这样编译报错,只能改成“runtimeOS”: “HarmonyOS”

请问上面报的两个错误怎么解决呢?

HarmonyOS
2024-08-10 11:47:20
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
put_get

private cameraMgr: camera.CameraManager | undefined = undefined;

let imageBuffer: Uint8Array | undefined;

相机创建等AP可以参考官方文档:https://developer.huawei.com/consumer/cn/doc/harmonyos-references/js-apis-camera-0000001820881333#ZH-CN_TOPIC_0000001811317606__cameragetcameramanager

另外TS 到ArtTs存在语法上的适配,可以参考:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/arkts-migration-background-0000001820999541#ZH-CN_TOPIC_0000001857876137__%E5%85%BC%E5%AE%B9tsjs%E7%9A%84%E7%BA%A6%E6%9D%9F

建议将globalThis,还有其他的一些变量,放到公共的文件中,哪个.ets需要调用直接导入。

分享
微博
QQ
微信
回复
2024-08-10 17:42:22
相关问题
如何获取单例undefined
285浏览 • 1回复 待解决
华为不能完全自主开发内核
13515浏览 • 2回复 已解决
怎样防止API恶意调用?
1806浏览 • 1回复 待解决
通过API获取系统信息属性
190浏览 • 1回复 待解决
通过API获取系统设置属性
256浏览 • 1回复 待解决
HarmonyOS定义一个map临时变量
421浏览 • 1回复 待解决
通过API异步获取系统信息属性
294浏览 • 1回复 待解决
HarmonyOS定义键盘不能顶起输入框
171浏览 • 1回复 待解决
如何自定义Component 属性
14829浏览 • 3回复 待解决
HarmonyOS上有VPN的API
433浏览 • 1回复 待解决
提问
该提问已有0人参与 ,帮助了0人