vuejs+;Firebase删除/更新子代
我刚开始使用Vuejs+firebase创建一个应用程序,但在更新或删除孙辈项目时遇到问题 要创建孙辈,我已成功使用以下方法:vuejs+;Firebase删除/更新子代,firebase,vue.js,vuejs2,Firebase,Vue.js,Vuejs2,我刚开始使用Vuejs+firebase创建一个应用程序,但在更新或删除孙辈项目时遇到问题 要创建孙辈,我已成功使用以下方法: spotsRefs.child(spot['.key']).child('pictures').push(picture) 但是,为了让一个孙子离开,这是行不通的,我正在尝试这样的事情: spotsRefs.child(spot['.key']).child('pictures').child(picture).remove() 对于更新孙子,我不确定如何获得自动
spotsRefs.child(spot['.key']).child('pictures').push(picture)
但是,为了让一个孙子离开,这是行不通的,我正在尝试这样的事情:
spotsRefs.child(spot['.key']).child('pictures').child(picture).remove()
对于更新孙子,我不确定如何获得自动生成的-LZJYrFFx9RMdiqMv5dvid
这是它在控制台中的外观:
我有两个不同的功能,用于创建和删除:
this.$root.$on('create', (spot, picture) => {
spotsRefs.child(spot['.key']).child('pictures').push(picture);
});
this.$root.$on('delete', (spot, picture) => {
spotsRefs.child(spot['.key']).child('pictures').child(picture).remove()
});
您需要使用子密钥而不是
.child(图片)
获取对已添加子项的引用:
const addedChildRef = spotsRefs.child(spot['.key']).child('pictures').push(picture)
然后移除
spotsRefs.child(spot['.key']).child('pictures').child(addedChildRef.key).remove()
或
哦,这是个好主意!!而且效果很好!非常感谢你。。。唯一的问题是,我是否需要将addedChildRef存储在某个地方?不知道如何使用它,当涉及到许多孩子我不知道如何组织数据和组件?您是否直接从firebase绑定数据?我有两个单独的函数用于创建和编辑,请看问题,我已经添加了这些函数。谢谢你!我将addedChildRef的值存储在对象中,我找不到更好的方法来执行此操作。。。所以我认为这是正确的答案。。。
addedChildRef.remove()