设计主干的样式并将其连接到Ruby服务器



所以我在Backbone、Sass、RoR、Bootstrap等上做了很多学习,我非常沮丧,因为我没有找到任何来源(包括Tuts+和Code School)提到任何将其整合在一起的方法。。。如果页面中所有我想要的内容都是通过主干网构建的,我不知道如何设计网页的样式。。。因此,如果我想点击网站上的"关于"页面,请在将该页面的所有主干内容附加到DOM时使其样式正确。

其次,我不确定我应该如何为一个网站创建这些网页;我应该在Backbone中创建整个页面,然后将其保留在服务器上,直到有人点击,例如"关于"页面,然后把整个页面加载到视图中吗?还是我完全误解了使用Backbone的方法之一?除此之外,我应该如何将Backbone与Ruby服务器进行通信?仅仅使用Ajax?

我正在寻找消息来源和任何能帮助我明确理解这些东西的人!

非常感谢

-斯图。

假设您想要构建一个单一页面的应用程序,了解每个应用程序的职责是很重要的:

轨道

  • 创建一个在服务器上运行的全栈应用程序
  • 创建消耗品API
  • 管理资产管道

主干

  • 管理前端javascript应用程序
  • 使用模型将数据从视图中解耦
  • 通过RESTful JSON接口连接API

请记住,这是对两者的过度简化。。。

Rails将处理后端,检索一个API供Backbone使用。Rails资产管道将提供Backbone所需的所有文件,包括将为您的应用程序设计样式的css。

这可能会让人感到困惑,因为你会听到一些概念最终会在它们之间发生冲突,比如两端都有模型视图路由器,但它们将独立生活,一个在服务器端(Rails)上工作,另一个在客户端(Backbone)

举个例子:

Rails将渲染:

domain
|-index.html
|-js/*.js
|-css/*.css
`-api/*.json

Backbone将使用DOM(index.html)和js脚本来执行逻辑,将视图附加到DOM中,并通过API使用ajax读取/写入数据。

另一件令人困惑的事情是视图,因为Rails会为您生成这些视图,而主干网也会有自己的视图,所以通常的设置是:

在客户端,主干网将至少有以下部分:

  • 路由器--它将编排您的应用程序,将事件绑定为路由,比如/#about页面,并创建一个视图并传递相应的模型:
    • 模型-它将从API请求数据,并在完成后调度事件
    • 视图--它将使用模板来呈现模型数据

在这种情况下,Rails将管理页面资产并提供API,Backbone将拥有自己的路由器、模型、视图和模板来在客户端呈现页面。

这也意味着,你将两者结合在一起的方式只能根据项目的具体情况来回答,而且有很多方法可以同时使用两者。

也就是说,IMHO首先了解完整的Backbone应用程序是如何工作的非常重要,然后使用主干rails-gem之类的东西,看看如何以一致的方式管理两者。

我知道你的意思——有很多关于Backbone的随机教程,但没有太多把它们放在一起。不幸的是,在某种程度上就是这样,但我想说,一旦你从代码学校和其他人那里学习了基础知识,那么如何真正构建复杂应用程序的最佳资源就是:

骨架导轨:http://www.backbonerails.com/

它涵盖了你谈论的大部分内容。前几次放映是免费的,随后的放映是付费的,但非常值得。在我从BackboneRails学到的技能的基础上,我构建了几个相当复杂的应用程序,结果很好。祝你好运

最新更新