天天看點

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

繼續閱讀