Grunt在文件夹中查看LESS文件,并在更少文件更改时创建css

时间:2015-05-12 11:30:36

标签: node.js gruntjs grunt-contrib-watch

我正在寻找GRUNT自动化任务,该任务监视根目录中较少的文件,并为我们提供与同一目录中较少文件同名的css文件,如

Root Folder

    package.json
    Gruntfile.js
    Folder1
        file1.less
        file2.less
    Folder2
        file3.less
        file4.less

我的Gruntfile.js

module.exports = function(grunt) {

    grunt.initConfig({
        //our LESS options
        less: {
          development: {
            files: {
              "": "" //not able to write this line, how can i mention which file to compile as i am watching the entire folder
            }
          }

        },

      watch: {
          css: {
            files: '**/*.less',
            tasks: ['less']

          }
      }


    });

    //load our tasks
    grunt.loadNpmTasks('grunt-contrib-less');
    grunt.loadNpmTasks('grunt-contrib-watch');

    //default tasks to run
    grunt.registerTask('default', ['less']);



}

在较少的任务配置中无法提及源少的文件名和结果css文件名,因为我正在观看整个文件夹,我想在相同的路径中创建相应的较少文件的css文件,少,每当特别是css被改变了。想要编译更改的文件,而不是编译的文件,如果更改的文件少了。

提前感谢您的帮助。

2 个答案:

答案 0 :(得分:1)

您可以使用grunt-newer配置较少的任务,仅使用较新的文件运行。

  • npm install grunt-newer --save-dev

安装插件后,添加

  • grunt.loadNpmTasks('grunt-newer');

编辑监视任务:

watch: {
    css: {
      files: '**/*.less',
      tasks: ['newer:less']
    }
}

答案 1 :(得分:1)

查看grunt.js docu并了解如何动态构建文件对象。