Javascript react本机应用程序中的Realm.objects()返回空对象
我正在realm中创建一个db,但是当我想用realm.objects()查询数据时,返回空对象,如:{“0”:{},“1”:{},“2”:{}…etc},我的代码是下一个:Javascript react本机应用程序中的Realm.objects()返回空对象,javascript,android,react-native,realm,Javascript,Android,React Native,Realm,我正在realm中创建一个db,但是当我想用realm.objects()查询数据时,返回空对象,如:{“0”:{},“1”:{},“2”:{}…etc},我的代码是下一个: import Realm from "realm"; const nombreEsquema = 'Imagen12'; class Imagen {} let esquema = Imagen.schema = { name: nombreEsquema, properties: { nombr
import Realm from "realm";
const nombreEsquema = 'Imagen12';
class Imagen {}
let esquema = Imagen.schema = {
name: nombreEsquema,
properties: {
nombre: {
type: 'string'
},
uri: {
type: 'string'
},
url: {
type: 'string'
},
}
};
let dbRealm = Realm.open({
schema: [esquema]
});
functionRealm() {
dbRealm.then(realm => {
realm.write(() => {
realm.create(nombreEsquema, {
nombre: 'David',
url: 'My URL',
uri: 'My URI'
});
});
let images = realm.objects(nombreEsquema);
console.log("------------------------------");
for (let i of images) {
console.log(i);
}
});
}
我阅读了realm的文档,但没有发现任何与此相关的问题,我的realm版本是5.0.2,我不知道我做得不好,我希望您能帮助我解决我的问题。因此我也遇到了同样的问题。我通过以下步骤解决了这个问题:
warn升级领域
import io.realm.react.RealmReactPackage在android/app/src/main/java/com/
/MainApplication.java中的MainApplication.java顶部
/MainApplication.java中检查您的软件包列表,确保其配置如下:
/node\u modules/realm/android/src/main/java/io/realm/react/RealmReactModule.java希望这有帮助 实际上,您可以将realm升级到5.0.3,因为5.0.2上有一个bug
请参见发布日志中的:
@Override
protected List<ReactPackage> getPackages() {
@SuppressWarnings("UnnecessaryLocalVariable")
List<ReactPackage> packages = new PackageList(this).getPackages();
// Packages that cannot be autolinked yet can be added manually here, for example:
// packages.add(new MyReactNativePackage());
+ packages.add(new RealmReactPackage()); // <-- This line adds in the realm package.
packages.add(new RNSensitiveInfoPackage());
return packages;
}
Native module realm tried to override realm for module name realm. If this was your intention, set canOverrideExistingModule=true
@Override
public boolean canOverrideExistingModule() {
return true;
}