标签: watermelondb

未定义不是评估适配器模式的对象

我正在尝试整合 WatermelonDb到我的 React Native 应用程序中。我收到一条错误消息,说 undefined 不是一个对象(正在评估 adapter.schema)

我关注了这个 GitHub 问题 https://github.com/Nozbe/WatermelonDB/issues/40 但它没有给出任何解决方案

我按照以下步骤进行安装

yarn add @nozbe/watermelondb
yarn add @nozbe/with-observables
yarn add --dev @babel/plugin-proposal-decorators
Run Code Online (Sandbox Code Playgroud)

我创建了一个.babelrc文件并添加了以下内容

{
  "presets": ["module:metro-react-native-babel-preset"],
  "plugins": [
    ["@babel/plugin-proposal-decorators", { "legacy": true }]
  ]
}
Run Code Online (Sandbox Code Playgroud)

我在 Xcode 中打开了我的项目

我创建了一个空swift文件,当被Xcode要求创建时Briding Header,我也创建了它

这是截图

在此处输入图片说明

我使用的是 React Native 0.60,所以我没有在终端中运行链接命令。

我还创建了一个单独的项目,我尝试react-native link @nozbe/watermelondb在其中运行React Native版本为 0.60.5 的应用程序,当在 iOS 模拟器上运行应用程序时,本机反应会抛出一个警告说链接会自动发生,因此为了取消链接我运行了react-native unlink @nozbe/watermelondb 但我仍然面临同样的问题,无论是链接还是不是。

这是我的示例代码

import {appSchema, tableSchema} from '@nozbe/watermelondb';

export const …
Run Code Online (Sandbox Code Playgroud)

react-native watermelondb

5
推荐指数
0
解决办法
593
查看次数

React Native西瓜数据库集合返回未定义

提前致谢

我在 React Native Android 中使用西瓜数据库,它返回未定义的集合。

 const handleDB = async () => {
    const myCollection = database.collections.get('data_items')

    await database.action(async () => {
      const newPost = await myCollection.create(post => {
        post.ItemID = 9
        post.ItemParentItem_ID = 8
      })
    })
  }
Run Code Online (Sandbox Code Playgroud)

我从同一个功能组件中调用它

handleDB()
Run Code Online (Sandbox Code Playgroud)

有什么解决办法吗

我的数据库

import { Database } from "@nozbe/watermelondb";
import SQLiteAdapter from "@nozbe/watermelondb/adapters/sqlite";
import { dbModel } from "./"
import { mySchema} from "./schema"

const adapter = new SQLiteAdapter({
    dbName: 'Northel',
    schema: mySchema
});

export const database = new Database({
    adapter, …
Run Code Online (Sandbox Code Playgroud)

react-native watermelondb

5
推荐指数
1
解决办法
2606
查看次数

标签 统计

react-native ×2

watermelondb ×2