管理Web组件的依赖关系; JS,CSS / SASS和模板文件

时间:2012-07-16 10:08:54

标签: javascript maven requirejs web-component

我正在寻找布局我们新网页组件的结构,目前我还不确定我是否找到了一个可以完成我们理想的所有工具的工具,或者非常接近,但它看起来像是现在是一件相当普遍的事情。

我们有一个运行Java服务器端的Web应用程序,而客户端我们大量使用JavaScript和SASS等等。我们希望重新构建我们的一些代码库,并组合我们的动态页面内容的某些方面。

例如,我们希望有一个标准的表组件,可以完全独立于完整的Web应用程序开发。我看到表组件有以下3个核心文件:

  • table.js
  • table.scss(我们编译成CSS文件的SASS文件)
  • table.tmpl(我们最终编译成JS函数的模板文件,例如使用Handlebars作为模板引擎)

然后帮助发展:

  • table-test.html(包含一些虚拟数据的测试页)
  • table-qunit.js(Qunit tests)

然后希望将所有这些文件编译成以下内容:

  • components.js - table.js和table.tmpl编译和缩小,然后拉入一些包含所有其他组件的更大的JS文件
  • components.css - table.scss已编译和压缩,并与所有其他组件CSS合并

我看过的工具:

  • requireJS - 似乎非常关注JS依赖关系管理,对资源文件有一些想法,但找不到任何关于它的使用和像SASS这样的CSS预处理器。我确实喜欢AMD JS依赖管理的想法。
  • Grunt - 执行我们想要的一些节点包
  • Sprockets - Ruby实现类似于我们想要的东西
  • Javascript Maven plugin - 最接近语言/库(我们已经使用Java和Maven)但是,似乎只考虑JavaScript依赖管理而不是CSS,或者至少考虑SASS资源文件。 / LI>

有没有人比上面的建议有更好的建议?什么东西更接近我们正在寻找的东西?理想情况下,不需要Node.js或Ruby的东西会更好......

3 个答案:

答案 0 :(得分:6)

这听起来真的非常适合TJ Holowaychuk的Component

答案 1 :(得分:1)

我想我找到了答案,谢谢这篇ST帖子:Maven Javascript Compressor

我的麻烦的答案似乎是wro4j

它对我有以下好处(有关所有内容,请参阅features页面):

  • Maven的源化
  • 的基于Java的
  • Spring可配置
  • 支持SASS文件, Dust模板(我们现在已选择,我认为这是一个相对未知的模板引擎)
  • 在构建时使用的选项,或运行时
  • 还有更多......

答案 2 :(得分:0)

wro4j如何为您服务?还可以查看cartero