如何用骨干创建导航菜单?

时间:2012-03-14 12:24:59

标签: javascript ruby-on-rails ruby-on-rails-3 backbone.js

我开始学习Backbone.js并且无法弄清楚一件事:在典型的rails应用程序中,我有一个布局视图和一个嵌套视图。我的布局通常包含由rails routing处理的导航链接。

如何使用Backbone执行相同的操作?我正在使用Rails 3.2和eco模板。

  • 我应该在eco中创建嵌套模板吗?
  • 我的导航链接应该是带有href的纯HTML链接还是导航应该是事件驱动的?

例如,我左侧有一个类别列表,右侧有一个类别项目。我希望我的类别显示在每个视图和相应的类别项目上(浏览器中的URL对应于所选类别)。

请指出正确的方向,因为网上的大多数教程都是'todo'风格的应用程序,根本没有导航。

谢谢。

更新 事实证明,我的问题不明确,所以让我把它缩小。

如何将RoR布局的概念应用于backbone.js应用程序?

我对两种可能的导航方式感到好奇:

  • 创建

    %a {:class => “客户”,:href => “#customers”}客户

  • 处理“。客户点击”我视图中的事件

哪种方式更好?

1 个答案:

答案 0 :(得分:1)

  

我对两种可能的导航方式感到好奇:

     

创建%a {:class => “客户”,:href => “#customers”}客户

     

处理“.customers点击”我视图中的事件

     

哪种方式更好?

在您了解工作的具体情况之前,两者都不会更好。它们只是实现目标和所需功能的选择。

有时候两者都应该被使用。例如,如果您支持搜索引擎优化和可访问性。

以下是一些更好的问题:

  • 哪一项最简单的事情可以完成工作?编写路由处理程序或点击处理程序会有更多代码吗?
  • 当我不需要时,路由处理程序是否会将功能与路由器紧密结合?
  • 我真的需要这个链接的路线,以便人们可以将其加入书签并直接回复吗?
  • 点击处理程序是否会导致我的代码跳过调用其他不直接相关的对象,或者我可以使用简单事件来使其他对象运行?

这些问题都没有一个正确答案。我建议尽可能尝试许多不同的想法。请记住,在开发新功能时,您可能会更改答案。今天你想要的答案不会是你明天所需要的。但这不应该阻止你现在选择答案并继续前进。选择一个,将其放置到位,当需要更改它时,更改它。