【问题标题】:Accessing object of type info_data which has been invalidated or deleted realm in react native访问已在 react native 中无效或删除领域的 info_data 类型的对象
【发布时间】:2019-01-30 10:33:48
【问题描述】:

我遇到此错误“访问已失效或删除的对象”, 我已经在网上查看了解决方案,但仍然找不到解决方案, 见下面的代码

deleteData(t_id) {
realm.write(() => {
            if (realm.objects('track_info').filtered('track_id =' + t_id).length > 0) {
                realm.delete(realm.objects('track_info').filtered('track_id =' + t_id));
                console.warn("REcord deleted");

               
                Alert.alert(
                    'Successes', 'deleted');
            } else {
               Alert.alert(
                   'Error', 'Record not found, or has been deleted already');
            }

         


        });

    }

以及对函数的调用

<TouchableOpacity style={[styles.BtnSuccess,
                        { flex: 2, flexDirection: 'row' }]} onPress={this.deleteData(this.state.t_id)}>
                            <Text style={[styles.btnText, { flex: 1, alignItems: 'center', alignContent: 'center', alignSelf: 'center' }]}>Submit</Text>
                        </TouchableOpacity>

【问题讨论】:

  • 请有人帮我解决这个问题.......

标签: react-native realm


【解决方案1】:

先尝试检索对象,并检查对象是否有效,然后才执行删除。

var obj = realm.objects('track_info').filtered('track_id =' + t_id)
if(obj.isValid())
 // perform deletion
else
 // alert message

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-10-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-10-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多