Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/firebase/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
vuejs+;Firebase删除/更新子代_Firebase_Vue.js_Vuejs2 - Fatal编程技术网

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() 对于更新孙子,我不确定如何获得自动

我刚开始使用Vuejs+firebase创建一个应用程序,但在更新或删除孙辈项目时遇到问题

要创建孙辈,我已成功使用以下方法:

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()