jquery - 在 Firebase 中将函数存储为值

标签 jquery firebase

我正在寻找有关将函数作为值存储在 Firebase 中以及在 HTML 文档中使用的更多指导和帮助。

  1. 在 Firebase 中将函数存储为值是否可行?

  2. 假设我可以将函数保存为 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/

相关文章:

javascript - 删除脚本标签

javascript - 使用 JQuery 内联样式属性定位 DOM 元素

javascript - 在 Console.Log() 中显示 HTML 而不是 jQuery 选择对象

java - 如何将 FCM token ID 发送到 PHP 服务器?

java - android 在设备上保存非常小的数据的最佳方法

javascript - 从另一个页面的输入中预填充表单数据

Firebase:获取链接到特定租户的用户

reactjs - 从 Firestore 获取数据

javascript - 子键的 Firebase 查询

javascript - jQuery 没有为 Angular 2 定义