'getOwnPropertyDescriptor' 在代理上:陷阱为 属性 '0' 返回的描述符与代理目标中现有的 属性 不兼容

'getOwnPropertyDescriptor' on proxy: trap returned descriptor for property '0' that is incompatible with the existing property in the proxy target

在我的 React Native 应用程序中,我试图通过 passProps 使用 wix 的 react-native-navigation 将领域对象推送到另一个屏幕。这是我的代码:

在渲染中()

render () {
    var entry = this.props.entry // this is a realm object
    return (
        <Text onPress={() => this.gotoEdit(entry)}>EDIT</Text>
    )
  }

gotoEdit 函数:

gotoEdit (entry) {
    this.props.navigator.push({
      screen: 'app.EditEntry',
      title: 'EDIT',
      passProps: {entry} // when this line is removed, the navigator works fine
    })
  }

但是,点击"EDIT",应用程序崩溃了。我在 React Debugger 中收到此消息:

代理上的

'getOwnPropertyDescriptor':陷阱返回的 属性 '0' 的描述符与代理目标 中的现有 属性 不兼容

我想通了。你不能在不崩溃的情况下将 Realm 对象作为道具推送到另一个屏幕。解决方案是传递对象的标识 属性,例如ID,然后使用它在下一个屏幕中引用该对象。