Reactjs 已移除Firebase多元素
我的react原生应用程序中存在firebase问题 问题是如何从数据库中删除元素。我会一个接一个地删除几个多个项目,但当我这样做时,我的应用程序崩溃了 我的firebase数据库的结构:Reactjs 已移除Firebase多元素,reactjs,firebase,react-native,firebase-realtime-database,Reactjs,Firebase,React Native,Firebase Realtime Database,我的react原生应用程序中存在firebase问题 问题是如何从数据库中删除元素。我会一个接一个地删除几个多个项目,但当我这样做时,我的应用程序崩溃了 我的firebase数据库的结构: Workouts: id, data and trainings array. Trainings: id, id_exe and sets array. Sets: id, weight, reps. 当我有一个训练日,有一个训练练习和一套训练时,当我移除一套训练时,我想移除一套训练和该训练的训练 我试过
Workouts: id, data and trainings array.
Trainings: id, id_exe and sets array.
Sets: id, weight, reps.
当我有一个训练日,有一个训练练习和一套训练时,当我移除一套训练时,我想移除一套训练和该训练的训练
我试过:
Promise.resolve(database.ref(`/workouts`).child(`/${id_workout}`).remove()
.catch((error) => console.log(error)))
.then(() => { Promise.resolve(database.ref(`/trainings`).child(`/${id_tren}`).remove()
.catch((error) => console.log(error)))
.then(() =>
database.ref(`/sets`).child(`/${set.id}`).remove());
})
或
代码正确地从数据库中删除节点,但应用程序因错误而崩溃。我认为这是回调错误,但我不知道如何解决它
这是错误的通信:
当我删除sigle元素时,一切正常,但当我想一个接一个地删除元素时,应用程序崩溃。错误表明问题出在
${set.id}
模板文本中的表达式上。set
变量可能是null
@cartant我检查您的建议,但是:1。console.log logged right set.id(console.log位于“删除集合”旁边的更深范围内)2。我用${set.id}注释了已删除的部分,但bug仍然是一样的。3.当我只删除了设置,锻炼或训练错误不存在,但当我链它,删除后删除控制台警报错误。4.这部分代码运行良好,因为它从数据库中删除了项目,但在删除应用程序后崩溃。重新启动应用程序时,删除的数据不存在。错误表明问题出在${set.id}
模板文本中的表达式上。set
变量可能是null
@cartant我检查您的建议,但是:1。console.log logged right set.id(console.log位于“删除集合”旁边的更深范围内)2。我用${set.id}注释了已删除的部分,但bug仍然是一样的。3.当我只删除了设置,锻炼或训练错误不存在,但当我链它,删除后删除控制台警报错误。4.这部分代码运行良好,因为它从数据库中删除了项目,但在删除应用程序后崩溃。当我重新启动应用程序时,删除的数据不存在。
database.ref(`/workouts`).child(`/${id_workout}`).remove()
.catch((error) => console.log(error)))
.then(() => {
database.ref(`/trainings`).child(`/${id_tren}`).remove()
.catch((error) => console.log(error)))
.then(() => {
database.ref(`/sets`).child(`/${set.id}`).remove()
.catch((error) => console.log(error)));
})
})