在React Native中,你应该在哪里放置迁移代码或删除realm数据库的代码(忽略迁移),并且只运行一次?
我尝试删除Realm数据库每次我回到登录屏幕.当我尝试登录,它应该保存用户信息到Realm,然后应用程序照常进行.然而,这不是事实,似乎因为Realm数据库被删除,它没有保存它.我以为一旦我登录,通过保存用户信息到Realm,它将初始化Realm,然后在Realm中保存用户。
在调试模式下,似乎即使删除了Realm数据库,一切功能都正常。调试模式要慢得多,所以在某个地方有时间问题吗?
有没有初始化Realm的方法?
3条答案
按热度按时间q9rjltbz1#
这就是我让迁移工作的方法。
我把
realm.js
放在/src
中,我把所有的react文件都放在那里。当我需要使用我的领域时,我把import realm from 'path/to/realm.js';
放在realm.js
中,我有我的旧模式和新模式。字符串
注意它们有相同的名字。然后在我的
realm.js
的底部,我曾经有export default new Realm({schema: [schema]});
我现在有这个:
型
如果你不需要迁移数据,你可以用新的模式版本和新的模式打开Realm,它也应该工作。
tp5buhyn2#
如果您刚刚添加或删除了schema的字段,则可以执行空迁移。这是我的realm.js文件:
字符串
}
wribegjk3#
只需将schemaVersion={2}添加到RealmProvider