我是以正确的方式构建我的应用程序吗? - Backbone.js

时间:2012-04-11 07:46:08

标签: javascript backbone.js backbone-relational backbone-views

我是Javascript和backbone.js的新手。使用RobotLegs在AS3中开发了一个应用程序,需要将其移植到Javascipt。对于客户端MVC,我开始关注Backbone.js。这些概念看起来很简单,但我对以“正确”的方式做事情有点不确定。还有一些地方我被卡住了......

所以基本上,我有这个Web服务(非RESTful),我需要通过app配置来获取JSON对象。理想情况下,我认为进行此调用的最佳方式是来自Backbone模型,但我不确定如何覆盖URL和Parse方法以使其与非Restful服务一起使用。所以现在我正在从App.js中的Model之外对它进行Ajax调用(下面分享的代码)。

一旦我从JSON调用中获取数据,我想将它存储在ConfigModel(SingleTon Model)对象中,我可以从模块中查询以检索最终填充某些视图的值对象。我在这里有2个问题。

1)我不知道如何使用Backbone.js实现Singleton模型 2)我不知道如何将我的ConfigModel进一步划分为更小的模型/集合,如果我需要将它们设置为Singleton或者只是将它们传递给View构造函数。

我正在使用Require.js来定义([])特定视图/模型等的依赖模块。现在我不确定已加载模块的范围。如果我需要让它们成为Singleton,那么我应该只在某处加载它们然后将依赖注入其他类/模块对象。我如何使用Backbone.js ???

进行此操作

最后,我想在整个框架中使用自定义事件。我可以在全局范围内调度并从模型/视图等中收听的框架事件排序...

正如你所看到的,我对于范围/单例以及所有这些都与Backbone.js&要求。

以下是我现在应用程序结构的方式......

1)我的index.html文件加载了带有Require.js

的“Main.js”

2)在Main.js中,我加载App.js并在其上调用init。 Init调用getConfig()函数,该函数对Web服务进行AJAX调用,并获取并解析JSON文本文件。这个我想存储在单例ConfigModel中。但是,我现在已经对此进行了评论,因为我开始尝试使用我的ConfigModel本身进行webservice调用...哪些无效。

3)然后我有一个带有默认URL映射的路由器。我在成功从Web服务接收JSON后初始化路由器。我不确定这是否正确或我应该从路由器进行Ajax调用?

以下是代码:http://pastebin.com/HHRF88Tq

我知道我到处都是,但如果有人能引导我朝着正确的方向前进,我真的很感激....

非常感谢。

萨米尔

1 个答案:

答案 0 :(得分:2)

你想看看骨干模式的最佳实践(比如引导你的模型!)

http://ricostacruz.com/backbone-patterns/

和checkout骨干基础知识,以全面了解骨干网架构(wip)

http://addyosmani.github.com/backbone-fundamentals/