【问题标题】:Delete key using Vue Resource使用 Vue 资源删除键
【发布时间】:2019-08-27 17:39:12
【问题描述】:
我想使用 firebase 的键删除数据:
我尝试从数据库中删除所有数据的方式:
this.$http.delete('data.json', book.id).then(response => {
// success callback
console.log("success");
console.log(response);
}, response => {
// error callback
console.log("error");
console.log(response);
});
如何只删除id通过的数据?
【问题讨论】:
标签:
firebase
vue.js
firebase-realtime-database
vuejs2
vue-resource
【解决方案1】:
我使用vuefire解决了这个问题
npm install vuefire firebase --save
脚本:
import { setTimeout } from 'timers';
import { db } from '../config/db';
let booksRef = db.ref('data')
export default {
data: () => ({
books: []
}),
firebase: {
books: booksRef
},
methods: {
show(book) {
book.show = !(book.show);
},
deleteBook(book) {
debugger;
booksRef.child(book.id).remove();
}
},
您可以从 firebase 导出的配置数据库。
【解决方案2】:
this.$http.delete(`data/${book.id}.json`)
.then(response => {
return response
}.catch(err => {
// error callback
return err
})
this.$http.delete(`data/${book.id}.json`)
.then(() => {
const index = this.array.findIndex((i) => {
return i.id === id
})
if (index > -1) {
this.array.splice(index, 1)
}
}.catch(err => {
// error callback
return err
})
这对我有用,你也可以尝试一下,或者返回一个可以在本地删除它的函数,而不是像上面第二个示例那样只返回响应