0

我已经使用npx react-native init AwesomeProject(= 版本 0.64.1)建立了一个非常基本的 react-native 项目,然后我使用yarn add realm. 此外,在我们运行的 ios 文件夹中pod install

接下来,我使用一个非常简单的 Car 模型创建了一个附加文件 realm.ts:

import Realm from 'realm'

class Car {
    static schema = {
        name: "Car",
        primaryKey: '_id',
        properties: {
            _id: "int",
            _make: "string",
            _model: "string",
            _miles: "int",
        },
    };

    private _make: string;
    private _model: string;

    get carName() {
        return `${this._make} ${this._model}`;
    }

    set make(value){
        this._make = value;
    }
}

const realm = new Realm({
    schema: [Car]
});

realm.write(() => {
  realm.create('Car', { _id: 1, _make: 'VW', _model: 'Golf', _miles: 0 });
})

const car = realm.objectForPrimaryKey('Car', 1)
console.log(car.isValid());

export default realm;

然后我在App.js.

这很好用,您将true在控制台中看到该行所期望的console.log(car.isValid());

另一方面,如果我们在 Chrome 模式下激活调试(全部在 iPhone 12 (iOS 14.5) 模拟器上完成),我们将收到错误消息:

TypeError: car.isValid is not a function.

停止调试器,它会再次工作……这是怎么回事?

4

0 回答 0