我正在寻找有关将函数作为值存储在 Firebase 中以及在 HTML 文档中使用的更多指导和帮助。
在 Firebase 中将函数存储为值是否可行?
假设我可以将函数保存为 Firebase 中的值,有人可以为我提供一些关于调用该函数的 Firebase 值并在脚本中应用的指示和指导吗?下面是在我的脚本中运行良好的函数,但该函数本身将在 100 个文档中使用完全相同的方式,并且我希望将这个部分变成交 key 的,以防我稍后需要更改函数内的语法。
下面是我正在使用的函数:
function doThat()
{
$.getJSON(practice_URL,
function(data){
$.each(data.objects, function(i, obj){
var li = $("<li></li>");
var html = "<h1>"+obj.name+"</h1>";
html += "<p>"+obj.description+"</p>";
html += "<p>"+obj.venue.name+", "+
obj.venue.street_address+", "+
obj.venue.locality+", "+
obj.venue.country+", "+
obj.venue.postal_code+
"</p><hr/>";
li.html(html);
$("#ul-data").append(li);
});
});
}
最佳答案
我过去曾在 Firebase 中存储函数定义,没有任何问题。
为了检索它们,我使用了eval
,但可能有更好的方法来完成相同的任务。
handlersRef.on('child_added', function(snapshot) {
eval('handlers["'+snapshot.name()+'"] = '+snapshot.val());
});
handlersRef.on('child_changed', function(snapshot) {
eval('handlers["'+snapshot.name()+'"] = '+snapshot.val());
});
然后我调用如下函数:
function runTask(id) {
var task = tasks.get(id);
if (task) {
var handler = handlers[task.type];
handler.call(task, id);
}
}
关于jquery - 在 Firebase 中将函数存储为值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22885532/