我是backbone.js的新手,正在努力学习一些教程。我已经发现了一些看起来不错的方法,但是它们的实现方式有一些不一致之处,所以我正在寻找一些关于最佳实践的指导。
以下是我正在学习的教程:
我的问题是:
或者,如果有人可以提出一个更好的介绍教程,遵循最佳实践,我将很高兴从那里学习。不幸的是,由于这两者之间的矛盾,我担心我可能学到了一些坏习惯。
提前谢谢。
发布于 2012-11-02 21:28:27
Backbone.Controller去年是重命名为 Backbone.Router。我猜你在读一本旧教程。
BackboneTutorials.com是入门的一个不错的教程。
当你学习的时候,建立一个小的应用程序,你就会知道什么是脊骨为你做的。
学习骨干的最好方法是通过带注释的源代码。每一行都有注释和解释。
在构建应用程序时,使用发展版本而不是小型化版本。这有助于调试。
如果你喜欢读书,请看Addy的骨干基础,一本免费的电子书。这本书很棒,但相当冗长。你可以用它作为参考。
有关资源的最终列表,请参见Quora上的这个问题;
不要太担心什么是'V‘,什么是'C’和主干在MVC上的旋转。该框架在分离与服务器交互的代码和执行核心客户端逻辑的代码方面做得很好。DOM元素的模板和更新留给您。从这个意义上讲,这是相当简约的。主干提供事件,使不同的部分相互交互。
发布于 2012-11-02 21:26:30
这是个好问题。不过,主干并没有对如何组织代码采取立场。
所以,真正的答案是:这取决于。
这取决于您的应用程序的需要和您如何习惯编程。
如果您想了解一些最佳实践,请参阅主干样板项目:https://github.com/tbranyen/backbone-boilerplate
这个项目非常扎实,在我开始的时候真的帮了我的忙。
然后,回答你的问题(这可能让人感到自以为是,而且确实如此):
1:主干主要是一个MV*框架(Model随便什么)。控制器逻辑主要存在于主干视图中,这对于前端开发来说是可以的,因为逻辑通常是真正地绑定到UI (因为我们主要是编码接口)。骨干没有内置控制器,但如果您喜欢这种类型的组织,只需构建您自己的。
2:Urls取决于您的需要。如果要获取完整的集合,请将其设置在集合上,如果只获取(或可能保存)一个模型,则将其设置在模型上。他们在一起生活得也很好。
3:关于路由器,如果您要在应用程序上构建多个页面/部分,请使用它们。但是,不要像在routes
API中那样使用action
作为action
,这最终会带来问题(用户按下后退按钮等)。因此,如果要管理页面,请使用路由。
希望能帮上忙!!
发布于 2012-11-02 21:28:38
我将根据经验回答:
Q:第二种情况正好相反。在MVC上,脊骨旋转中的"C“是哪种最佳实践?
A:当前的主干中没有Controller
-- "C“出现在视图(大多数情况下)或路由器中(见下文)。
Q:第一个tut在模型中定义urls,而第二个在集合中定义它。哪个是更好的练习?
A:,在某些情况下,您不需要集合。如果没有,您的模型绝对需要一个URL。当您有一个集合时,您为集合指定的URL将应用于它的模型。
Q:第二个tut使用Backbone.Router,而第一个不使用Backbone.Router。哪一种是最佳实践?
A:规则--在2种情况下,您想使用路由器: 1)当您想拥有历史时,2)当您想使用permalinks。否则你就不需要路由器了。
https://stackoverflow.com/questions/13203058
复制相似问题