我正在尝试使用 yeoman(http://yeoman.io/)建立客户端应用程序工作流,在 Rails 背景下,我习惯于由 Sprockets(https://github.com/sstephenson/sprockets)支持的资源管道的便利性。
我正在努力让所有部分彼此协作,并已经花费了几个小时来尝试弄清楚。
首先要考虑的问题是,是否有一种已经确立的(例如在 Rails 世界中类似约定优于配置的方式)使用 yeoman 开发客户端应用程序的方法?是否有某些明确的指南(除了基本的 webapp-generator 指南)呢?
有些人建议使用 requirejs(我宁愿不使用它,因为虽然它简化了开发过程,但我需要通过 Almond.js 或 AMDclean.js 打包应用程序,或者承受 requirejs 的不必要开销)。
我的设置是:
Coffeescript、Backbone + Marionette、Handlebars 用于模板和 ZURB Foundation with SASS。
最终我想要实现以下设置,同时使用 bower 管理第三方依赖项:
开发环境:
- 有类似 Rails 中的 javascript 清单,使我可以声明依赖项的顺序,这将被拆分到 index.html 中
- 为所有 .scss 文件添加一个 .css 条目到 index.html 中
- 每个文件进行观察并在需要时进行编译
生产环境(dist):
- 所有 .scss 文件被编译、压缩和合并为 app.css
- 所有 bower 文件合并和压缩为 vendor.js
- 所有应用程序 coffeescript 文件被编译、压缩和合并为 app.js
- 所有模板被编译、压缩和合并为 templates.js
- index.html 修改为仅包括这四个文件。
是否有类似于这样的设置可用呢?
我也愿意听取建议和/或其他替代工作流。
Grunt
单独完成了 Yeoman 所需的大部分工作。将其与Bower
结合使用,您几乎可以完成平均应用程序所需的任何操作。如果您的应用程序需要更复杂的功能,则Node
是您的好朋友 - 使用Node
您可以实现仅在终端级别可能的操作。 - Wallace Sidhrée