Javascript 正在从Firebase数据库中删除ref的子级
因此,从Firebase数据库中删除ref的子项有点困难。 我正在使用javascript,我正在尝试向FriendlyChat源代码添加更多内容,他们将其用作启动程序 这里是我的删除功能,但由于某些原因,它不会删除Javascript 正在从Firebase数据库中删除ref的子级,javascript,firebase,firebase-realtime-database,Javascript,Firebase,Firebase Realtime Database,因此,从Firebase数据库中删除ref的子项有点困难。 我正在使用javascript,我正在尝试向FriendlyChat源代码添加更多内容,他们将其用作启动程序 这里是我的删除功能,但由于某些原因,它不会删除 FriendlyChat.MESSAGE_TEMPLATE = '<div class="message-container" style="padding-bottom: 30px;padding-top:30px">' + '<center
FriendlyChat.MESSAGE_TEMPLATE =
'<div class="message-container" style="padding-bottom: 30px;padding-top:30px">' +
'<center><div class="spacing"><div class="pic"></div> </div>' +
'<div style="font-size:24px" class="message"></div><br>' +
'<div style="font-size:20px;padding-left:0px" class="name"></div></center>' +
'<div onClick="deleteMessage(this.id)" class="delete">Delete</a>' +
'</div>';
// A loading image URL.
FriendlyChat.LOADING_IMAGE_URL = 'https://www.google.com/images/spin-32.gif';
// Displays a Message in the UI.
FriendlyChat.prototype.displayMessage = function(key, name, text, picUrl, imageUri) {
var div = document.getElementById(key);
// If an element for that message does not exists yet we create it.
if (!div) {
var container = document.createElement('div');
container.innerHTML = FriendlyChat.MESSAGE_TEMPLATE;
div = container.firstChild;
div.setAttribute('id', key);
this.messageList.appendChild(div);
}
if (picUrl) {
div.querySelector('.pic').style.backgroundImage = 'url(' + picUrl + ')';
}
div.querySelector('.delete').setAttribute('id', key);
div.querySelector('.name').textContent = name;
var messageElement = div.querySelector('.message');
if (text) { // If the message is text.
messageElement.textContent = text;
// Replace all line breaks by <br>.
messageElement.innerHTML = messageElement.innerHTML.replace(/\n/g, '<br>');
} else if (imageUri) { // If the message is an image.
var image = document.createElement('img');
image.addEventListener('load', function() {
this.messageList.scrollTop = this.messageList.scrollHeight;
}.bind(this));
this.setImageUrl(imageUri, image);
messageElement.innerHTML = '';
messageElement.appendChild(image);
}
// Show the card fading-in.
setTimeout(function() {div.classList.add('visible')}, 1);
this.messageList.scrollTop = this.messageList.scrollHeight;
this.messageInput.focus();
};
FriendlyChat.prototype.deleteMessage = function(key) {
this.deleteRef = this.database.ref('notifications');
document.getElementById(key).onclick = function() {
if (confirm("Are you sure you want to delete this notification?") == true) {
alert("Removed: " + key);
this.deleteRef.child(key).remove();
} else {
alert("Canceled");
}
}
};
我已经被困了一段时间了。我希望有人能解释或帮助
谢谢大家! 所以我想出来了!结果是我的firebase裁判工作不正常。 以下是更新的代码:
FriendlyChat.prototype.deleteMessage = function(key) {
//this.deleteRef = this.database.ref('notifications');
document.getElementById(key).onclick = function() {
if (confirm("Are you sure you want to delete this notification?") == true) {
alert("Removed: " + key);
firebase.database().ref('notifications').child(key).remove();
} else {
alert("Canceled");
}
}
};
所以我想出来了!结果是我的firebase裁判工作不正常。 以下是更新的代码:
FriendlyChat.prototype.deleteMessage = function(key) {
//this.deleteRef = this.database.ref('notifications');
document.getElementById(key).onclick = function() {
if (confirm("Are you sure you want to delete this notification?") == true) {
alert("Removed: " + key);
firebase.database().ref('notifications').child(key).remove();
} else {
alert("Canceled");
}
}
};