【问题标题】:Converting Backbone.js App to communicate with parse.com转换 Backbone.js 应用程序以与 parse.com 通信
【发布时间】:2014-04-15 04:57:36
【问题描述】:

我是一名 IT 学生,正在学习如何使用 Backbone.js。我阅读了所有文档,但我发现使用示例应用程序时学习起来更容易,因为我从来没有编写过这种类型的应用程序,所以很难想出一种方法来构建我自己的应用程序,所以我使用了@ 987654321@ 制作类似的编辑应用程序。示例应用程序没有服务器端。 现在我需要连接应用程序以使用 parse.com 作为后端(服务器端)而不是使用本地集合。 如果有人可以请告诉我我应该在代码中进行哪些更改和转换,以便它使用 REST API 将示例应用程序连接到 parse.com 应用程序,这样当我在应用程序中编辑某些内容以与 parse.com 同步时。

如果有人愿意以比说“你应该阅读文档”更详细的方式来解释这一点,我将不胜感激,因为我做到了,但我仍然不明白这一点:)

祝你有美好的一天。

【问题讨论】:

    标签: javascript api backbone.js underscore.js parse-platform


    【解决方案1】:

    这只是拥有正确的主干模型和集合,并设置正确的url on the collectionurlRoot on the model。然后你可以只调用主干方法,如syncsavedelete

    涵盖 REST 解释的最佳详细答案可能是 this one

    【讨论】:

    • 谢谢,对我有点帮助。 :)
    【解决方案2】:

    您不能将主干集合和模型换成 Parse 的集合吗? Parse.com 是一个网络服务,为您喜欢的任何东西提供 REST 接口,让我们将其连接到我们的 Backbone 模型。

    首先让我们在 Parse.com 上创建一个新应用,我的应用名为 FunkyAppartments。 将用于加载 Parse javascript lib 的脚本标记插入 index.html 或其他任何内容:

    <script src="http://www.parsecdn.com/js/parse-1.5.0.min.js"></script>
    

    将主干模型和集合切换为使用解析类型(如果您有扩展主干,请重命名 fetch 方法,因为我们不想覆盖 parse 之一):

      //var Appartment = Backbone.Model.extend(); Backbone wo. Parse.com
      var Appartment = Parse.Object.extend("Appartment");
    
      //var Appartments = Backbone.Collection.extend({ Backbone wo. Parse.com
      var Appartments = Parse.Collection.extend({
        model: Appartment,
        initializeData: function(){
          var self = this;
          var callback = function (data){console.log(data); self.reset(data)};
          S.Appartments.loadAppartments(callback);
    
        },
        loadAppartments: function(callback){
          debugger;
          this.query = new Parse.Query(Appartment);
          var result = this.fetch();
          callback(result);
          return result;
        }
    
      });
    

    我在加载 appartments 中添加了一个调试器标签,以便开发人员工具在控制器中间中断,在这里我可以访问控制器的 Appartment 私有类型,因此我可以在解析服务器上存储一些数据并通过验证将以下内容粘贴到开发者工具控制台中。

    var testAppartment = new Appartment();
    testAppartment.save({name: "foobars"}).then(function(object) {
      alert("yay! it worked");
    });
    

    是的,我们刚刚在其中添加的应用程序的数据显示在 parse.com UI 中。更重要的是,它出现在我们的前端。这很容易!

    【讨论】:

      猜你喜欢
      • 2015-03-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-07-06
      • 2014-12-20
      • 1970-01-01
      • 2013-02-17
      • 1970-01-01
      相关资源
      最近更新 更多