将Jade集成到Yeoman的服务器/监视/重新加载任务中

时间:2013-01-09 17:44:58

标签: node.js build-automation pug gruntjs yeoman

我一直在玩Yeoman& Jade。我通过yeoman init angular创建了一个小型测试应用程序(这是一个有角度的应用程序,但这不是重点)......

当我在命令行输入yeoman server时,它将:

  • 编译coffeescript& compass个文件
  • 启动服务器
  • 启动浏览器
  • 手表&重新加载coffeescript&指南针在浏览器中更改

这是Yeoman的一大特色!

现在我想要与Jade相同的功能。所以我通过npm install grunt-jade安装了 grunt-jade ,并在 GruntFile中添加了以下配置.js 编译jade模板:

   jade: {
      html: {
        src: ['app/views/*.jade'],
        dest: 'app/views',
        options: {
          client: false
        }
      }
    },

我能够将jade任务整合到 Yeoman的手表&通过在watch任务中添加以下配置来重新加载任务

  watch: {
     ...
     jade: {
       files: 'app/views/*.jade',
       tasks: 'jade reload'
     },
     ...
  }

所有工作都非常好......除非我将jade任务添加到命令中,否则不会发生初始编译:

yeoman jade server

我们的管家不喜欢这个好女孩,因为他不会让她与他的server任务集成:)这很烦人,因为yeoman server只会编译coffeescript&罗盘文件。

有什么方法可以将jade任务添加到yeoman server的默认执行中吗?

3 个答案:

答案 0 :(得分:14)

我们创建了一个关于如何将Jade与Yeoman集成的指南:Using Yeoman and Jade

答案 1 :(得分:3)

确保添加

  grunt.loadNpmTasks('grunt-jade');

在你的gruntfile之上,否则yeoman不知道如何处理“玉”任务

答案 2 :(得分:1)

https://gist.github.com/passy/5229305

一起使用Yeoman 1.0和Jade是一个很好的指南