在距离远的地方从火力基地获取数据 [英] Get data from firebase when within distance
问题描述
我想:在进入300m的聊天室地理位置时,从Firebase获取数据(=以前的聊天消息)。 我的代码:
以下是我的基本Firebase聊天功能:
var myDataRef = new Firebase(https:/ /digitaldatastrategi.firebaseio.com/);
$('#messageInput')。keypress(function(e){
if(e.keyCode == 13){
var name = $('#nameInput')。val );
var text = $('#messageInput')。val();
myDataRef.push({name:text,text});
$('#messageInput' ).val('');
}
});
myDataRef.on('child_added',function(snapshot){
var message = snapshot.val();
displayChatMessage (message.name,message.text);
});
函数displayChatMessage(name,text){
$('< div />')。text(text).prepend($(' (text + name:'))。appendTo($('#messagesDiv'));
$('#messagesDiv')[0] .scrollTop = $('#messagesDiv')[0] .scrollHeight;
};
这是我的在300m内激活聊天室功能:
$ (chatroom){b / b>
jQuery(#chat)。slideDown(slow);
myDataRef =新的Firebase(firebaseURL + chatroom [0]);
console.log(你在:,chatroom);
}
其他{
jQuery(#chat)。slideUp(slow);
console.log(你不在聊天室);
}
}
我如何做到这一点,不仅在300米以内聊天室有效,而且我还从聊天室获取来自Firebase的数据。
我无法设法使功能(快照)正常工作。只有未定义出现在聊天室窗口。
非常感谢。
/ a。
查看GeoFire,一个建立在Firebase之上的库,可以让您执行GeoQueries,例如: https://www.firebase.com/blog/2013-09- 25-location-queries-geofire.html
I want to : GET data (=previous chat messages) from Firebase when entering 300m of a chatroom geolocation.
My Code :
Here is my basic Firebase chat function :
var myDataRef = new Firebase("https://digitaldatastrategi.firebaseio.com/");
$('#messageInput').keypress(function (e) {
if (e.keyCode == 13) {
var name = $('#nameInput').val();
var text = $('#messageInput').val();
myDataRef.push({name: name, text: text});
$('#messageInput').val('');
}
});
myDataRef.on('child_added', function(snapshot) {
var message = snapshot.val();
displayChatMessage(message.name, message.text);
});
function displayChatMessage(name, text) {
$('<div/>').text(text).prepend($('<em/>').text(name+': ')).appendTo($('#messagesDiv'));
$('#messagesDiv')[0].scrollTop = $('#messagesDiv')[0].scrollHeight;
};
Here is my "activate Chatroom when within 300m" function :
if (chatroom) {
jQuery("#chat").slideDown("slow");
myDataRef = new Firebase(firebaseURL + chatroom[0]);
console.log("You are in:", chatroom);
}
else {
jQuery("#chat").slideUp("slow");
console.log("You are not in a chatroom");
} }
How can I do so not only does a chatroom active when I get within 300m but I ALSO get the data from firebase that is located at that chatroom. I can't manage to make the function(snapshot) to work properly. Only "undefined" appears in the chatroom window.
much appreciated. /a.
Take a look at GeoFire, a library built on top of Firebase that lets you perform GeoQueries such as these: https://www.firebase.com/blog/2013-09-25-location-queries-geofire.html
这篇关于在距离远的地方从火力基地获取数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!