SPA中的Html标记提取和一致性

时间:2013-04-03 13:27:20

标签: html backbone.js architecture single-page-application aura.js

我目前正在评估使用Backbone.jsAura.js来构建企业级SPA。

我有一个很好的Javascript架构,它提供了抽象,一致性,灵活性,并且不依赖于任何基础库。

正如我所看到的,在使用任何MV *模式(特别是Backbone)时,标记生成可以通过直接dom操作和外部html模板的组合分散在整个视图中。

我想在我的视图中对html标记应用相同的原则,就像我的Javascript架构一样。

  1. 抽象 - 理想情况下,我想为开发人员提供一个简化的API来生成标记,可能会使他们远离正在使用的css类/标记结构。

  2. 一致性 - 我希望提升和控制开发人员团队中制作的标记的一致性。

  3. 灵活性 - 如果需要更改正在使用的css类/标记结构,我想避免必须找到并完全重写某些标记的所有实例。理想情况下,我希望在一个地方进行任何更改,这些更改将在系统内的所有用途中传播。

  4. 作为如何在服务器端实现这一目标的实际示例,我们目前在ASP.NET MVC中使用一套自定义HtmlHelper(类似于KendoUI的设计)。这些帮助程序为开发人员提供了一个很好的流畅API,可以集中控制生成的标记。

    然而,当我们转向客户端UI生成时,我不确定如何获得服务器端标记生成中可用的相同优势。

    我很欣赏模板可以在整个用户界面中提供可重复使用的小部件,但这并不能完全解决上面列出的问题,这些问题在创建这些模板和包含它们的布局时适用。

    总结一下我的问题......

    在开发企业级SPA时,可以采用哪些实践来实现团队内标记生成的控制和一致性?

1 个答案:

答案 0 :(得分:2)

由于您的问题仅限于Backbone.js和Aura,我不确定这是否有资格作为答案,但我肯定会检查3件事

  1. AngularJSAngularUI - 指令的概念,类似于Web Components的概念(正在进行的Web控件W3C标准)
  2. 如果您喜欢键入编码,并且喜欢生活在最前沿,请检查Dart Web UI它也使用了非常相似的概念

  3. 如果你必须留在Backbone的土地,我当然会检查Backbone UI

  4. 我相信前两个人有更好的机会回答你的3个要求。