端云一体化云数据库操作(HarmonyOS 鸿蒙Next),直接报错:Error message: Cannot read property DatabaseObject of undefined

端云一体化云数据库操作(HarmonyOS 鸿蒙Next),直接报错:Error message: Cannot read property DatabaseObject of undefined 在使用端云一体化操作云数据库的时候,项目启动就报错:

代码如下所示:

import { cloudDatabase } from '@kit.CloudFoundationKit';

class Post extends cloudDatabase.DatabaseObject {
  id: number;
  userId = '';
  content = '';
  name: string;
  profilePicture: string;
  insertDate: Date;
  likes = '[]';
  likeCount = 0;

  naturalbase_ClassName(): string {
    return 'Post';
  }
}

export { Post };

报错信息如下所示:

Device info: emulator

Build info: emulator 5.0.0.123(SP16DEVC00E123R4P11log)

Fingerprint: 1d3f872aa4a801576d961225a52e17ec736406ba32dd1f02564a07b9c1a65489

Module name: com.atomicservice.6917565328366739520

Version: 1.0.0

VersionCode: 1000000

PreInstalled: No

Foreground: Yes

Pid: 10264

Uid: 20020043

Reason: TypeError

Error name: TypeError

Error message: Cannot read property DatabaseObject of undefined

Stacktrace:

  • at func_main_0 (entry/src/main/ets/pages/CloudDb/Post.ts:3:20)

有没有哪位大佬遇到过,感谢分享。


更多关于端云一体化云数据库操作(HarmonyOS 鸿蒙Next),直接报错:Error message: Cannot read property DatabaseObject of undefined的实战教程也可以访问 https://www.itying.com/category-93-b0.html

4 回复

运行设备是?如果是本地模拟器,好像不支持,要用真机才行。

更多关于端云一体化云数据库操作(HarmonyOS 鸿蒙Next),直接报错:Error message: Cannot read property DatabaseObject of undefined的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


是的,必须真机,才可以,使用了真机就可以啦,

最终的解决方法:

  1. 手工签名,这个必须
  2. 使用真机进行测试

在HarmonyOS鸿蒙Next中进行端云一体化云数据库操作时,报错“Error message: Cannot read property DatabaseObject of undefined”通常是由于以下原因之一:

  1. 云数据库SDK未正确引入:检查项目中是否已正确引入鸿蒙云数据库的SDK,确保相关依赖已添加到oh-package.json5文件中。

  2. 数据库对象未初始化:在使用云数据库功能前,必须通过cloud.database()方法初始化数据库对象。如果未初始化或初始化失败,会导致该错误。

  3. 云数据库服务未启用:确认在华为开发者平台上已为应用启用了云数据库服务,并且配置正确。

  4. 权限问题:检查应用是否具备访问云数据库的权限,确保在config.json文件中已声明相关权限。

  5. API调用顺序错误:确保在调用数据库操作前,相关对象已正确初始化,避免在未定义状态下访问DatabaseObject

  6. 网络问题:如果设备网络连接异常,可能导致云数据库服务无法正常访问,从而引发该错误。

建议检查以上几点,确保代码逻辑和配置正确。

回到顶部