首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >模仿Firebase客户端库的结构和模式

模仿Firebase客户端库的结构和模式
EN

Stack Overflow用户
提问于 2015-10-25 11:55:02
回答 1查看 64关注 0票数 5

我正在考虑创建自己的JavaScript客户端库,我喜欢Firebase对请求进行格式化的方式。我在试着了解到底发生了什么。通过查看网络指南这里,我发现了以下代码:

代码语言:javascript
复制
var ref = new Firebase("https://docs-examples.firebaseio.com/web/saving-data/fireblog");

var usersRef = ref.child("users");

usersRef.set({

    alanisawesome: {
      date_of_birth: "June 23, 1912",
      full_name: "Alan Turing"
    },

    gracehop: {
      date_of_birth: "December 9, 1906",
      full_name: "Grace Hopper"
    }

});

我可以看到,ref等于一个名为Firebase的函数,而usersRef等于ref.child

我在想象这样的事情:

代码语言:javascript
复制
 Firebase = function(url) {
    this.child = function(path) {

  console.log(url);
  console.log(path);

};
};

在这里,我可以看到usersRef.set正在被调用,但是我不知道它将如何或在哪里?set是函数还是对象?我注意到firebase有set()update()push()transaction(),这使我认为这些都是函数。

代码语言:javascript
复制
"TypeError: Cannot read property 'set' of undefined

也许我完全走错了路,我只是不熟悉这个模式。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-10-25 14:47:39

如果您检查Firebase,您将看到child()返回一个新的Firebase引用到子位置。所以就像这样:

代码语言:javascript
复制
var Firebase = function(url) {

   console.log(url);

   this.child = function(path) {
      return new Firebase(url+'/'+path);
   };

   this.set = function(object) {
      console.log(object);
   };

};

我给你更新了jsbin:https://jsbin.com/nucume/2/edit?js,console

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33329393

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档