16

是否可以将 haml-fixtures 与 jasmine-jquery 结合使用?

我对必须创建大量静态 html-fixtures 并不满意,因为我所有的视图都是用 haml 编写的。因此,我不仅需要创建大量重复的代码,而且还必须将(已经重复的)代码重写为 HTML。双痛。

有什么建议么?最佳实践?到目前为止,有人使用过 jasmine-jquery 和固定装置吗?

4

1 回答 1

9

是的。我知道有 3 条路径:

  1. 像现在这样手动创建夹具。这感觉就像重复的代码。优点是它非常简单(而且很直观,因为很多人都是这样开始的)。从长远来看,我认为它可以帮助您减少标记和 jQuery 脚本之间的耦合。我发现使用这种技术鼓励我找出我的 jQuery 代码所需的最简单的标记。

  2. 这可能是您正在寻找的答案。haml从您的模板生成的固定装置。这篇博文将向您介绍一种方法,但 google 可以向您展示更多方法。这很好,因为可以保证 haml 代码和 JS 是同步的。不利的一面是,它的一些复杂性可能——而且确实——会出错。

  3. 我最近的所有项目都走得更远,消除了对生成标记的非常基本的依赖。我的模板通常会在页面上输出单个<div>以及一些数据属性,并且 Javascript 会为我构建所有 DOM 元素(而不是 haml)。基于 Javascript 的模板促进了这一点。Jasmine 测试非常简单,通常可以在没有固定装置的情况下进行测试,使用 var$dom = $('<div>');作为整个固定装置。如果您无论如何都必须处理客户端上的数据,我发现这总体上更简单。

于 2011-03-21T06:01:42.850 回答