javascript - 用于客户端 Web 应用程序的开发/构建工具

标签 javascript node.js coffeescript less npm

我正在开发一个相当大的 Node Web 应用程序,我意识到我的工作流程不是最理想的。服务器端代码很好地组织成 Node 模块。然而,应用程序中的大部分繁重工作都发生在客户端代码上。

该项目由 jade、less 和 javascript/coffeescript 代码组成。此外,还有一堆来自库(jQuery、D3、Bootstrap 等)的 css/js。我正在寻找但很难找到的是一个很好的工具链,它可以帮助我组织我的项目并在开发和生产之间切换:

  • 开发模式:在 Node 中即时编译 jade、less 和 coffeescript,无需重新构建。将编译后的代码作为单独的文件包含到 html 中。在服务器端代码中设置一些调试参数。

  • 生产模式:一个构建脚本(make/ant)编译压缩并将代码组合成静态的html/css/js。

目前,我正在使用一些用于开发的 Node 服务器代码和用于生产的 make 文件手动做很多事情,例如像这样的事情:

cat javascript/*.js > build/client.js

然而这有点烦人而且我根本不是 make/ant 专家。问题的另一个来源是我为开发和生产维护单独的 html 文件,因为它们包含不同的 css/js 文件。

是否有任何好的框架或示例项目可以帮助我改进我的工作流程?谷歌给了我类似 hem 的东西, buildr.npm , grunt ,但我不太确定这些项目有多成熟,以及它们是否真的解决了我的问题或增加了更多的复杂性。

最佳答案

你也可以看看brunch , 有很多插件支持

根据网站它支持以下内容,如果需要,您还可以添加新插件...

  • 编程语言:JavaScript、CoffeeScript、IcedCoffeeScript、LiveScript、Roy
  • 预编译模板:Handlebars.js、Jade、Mustache、Eco
  • 样式:CSS、Stylus、LESS、Sass
  • Linters:JSHint、CoffeeLint
  • 压缩器:uglify.js、clean-css

  • 关于javascript - 用于客户端 Web 应用程序的开发/构建工具,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13731077/

    相关文章:

    javascript - 如何在 JavaScript 中创建对象数组?

    javascript - 有没有一种好方法可以在 HTML 或 JavaScript 中向用户显示收集的数据并仍然保留数据?

    node.js - Nodejs - 另一个安装正在进行中

    javascript - CoffeeScript 从 id/class/name 中获取选择字段

    javascript - 使用 map、filter、reduce 将对象数组转换为具有额外属性的对象数组

    javascript - 调试 javascript 函数

    javascript - 在 React 中访问父组件的 onClick 方法

    node.js - Mongoose 用另一个 Model 对象填充数组字段

    ruby-on-rails - 在 Rails 3.1 中使用不显眼的 Javascript(数据远程)的 Coffeescript 和 Haml

    javascript - 图像上的简单 Javascript/CSS 文本叠加