天天看点

grunt的安装使用

目前 Grunt 的安装有些改变, grunt-cli 全局安装, 而 grunt 安装在本项目.

$ npm install grunt-contrib-watch –save-dev

$npm install grunt-nodemon –save-dev

$npm install grunt

加上–save-dev可以让本地添加的插件自动添加到项目的依赖中去。

安装完以后,配置gruntfile.js文件。根据自己的目录要做修改。

module.exports = function(grunt) {

  grunt.initConfig({
    watch: {
      jade: {
        files: ['views/**'],
        options: {
          livereload: true
        }
      },
      js: {
        files: ['public/js/**', 'models/**/*/js', '/schemas/**/*.js'],
        //tasks: ['jshint'],
        options: {
          livereload: true //当文件出现改动的时候会重新启动服务
        }
      }
    },
    nodemon: {
      dev: {
        options: {
          file: 'app.js',
          args: [],
          ingoredFiles: ['README.md', 'node_modules/**', '.DS_Store'],
          watchedExtensions: ['js'],
          watchedFolders: ['./'],
          debug: true,
          delayTime: ,
          env: {
            PORT: 
          },
          cwd: __dirname
        }
      }
    },

    concurrent: {
      tasks: ['nodemon', 'watch'],
      options: {
        logConcurrentOutput: true
      }
    }
  })

  grunt.loadNpmTasks('grunt-concurrent');//优化慢任务 如less coffee
  grunt.option('force', true);//不要因为语法或警告中断整个grunt
  grunt.registerTask('default', ['concurrent']);//通过concurrent的tasks传入nodemon和watch 可以执行这两个任务
}
           

所以,有文件修改了grunt会自动重启,就不用每次都重新node app.js了。

在项目目录下执行

$grunt

出现以下信息,证明运行成功。

Running “concurrent:tasks” (concurrent) task

Running “nodemon:dev” (nodemon) task

Running “watch” task

Waiting…

[nodemon] 1.9.2

[nodemon] to restart at any time, enter

rs

[nodemon] watching: .

[nodemon] starting

node app.js

继续阅读