如何使用grunt和grunt-contrib-less将编译的CSS文件输出到不同的生产文件夹

时间:2013-12-13 11:20:21

标签: css less gruntjs windows-7-x64

我发现这个解决方案是使用grunt-contrib-less软件包减少构建,但我无法弄清楚使用grunts配置任务(http://gruntjs.com/configuring-tasks)如何输出* .css文件到特定目的地。我试过去:" C:/ my_folder /"。有什么建议吗?

less: {
    options: {
        paths: ['css/base']
    },
    // target name
    src: {
        // no need for files, the config below should work
        expand: true,
        cwd:    "css/base",
        src:    "*.less",
        ext:    ".css"
    }
}

我也尝试过使用grunt-contrib-less中的示例,但我无法弄清楚如何获取它a)只需选择所有文件并将它们构建到相同的文件名中不同的扩展(即无.css)就像上面那样b)我不理解选项JSON属性(甚至阅读文档)

less: {
  development: {
    options: {
      paths: ["assets/css"]
    },
    files: {
      "dev/css/*.css": "dev/less/*.less"
    }
  },
  production: {
    options: {
      paths: ["assets/css"],
      cleancss: true
    },
    files: {
      "prod/css/*.css": "dev/less/*.less"
    }
  }
}

在所有这些结束时,我真的希望将这两种方法结合起来,将其全部减少并将其编译为css进行开发,最后将css用于缩小生产。

我已经翻阅http://net.tutsplus.com/tutorials/javascript-ajax/meeting-grunt-the-build-tool-for-javascript/http://www.integralist.co.uk/Grunt-Boilerplate.html而没有太多运气了解Grunt。

1 个答案:

答案 0 :(得分:2)

您需要指定dest属性。指定较少文件源的最佳方法是使用相对路径。(相对Gruntfile.js)

less: {
  options: {
    paths: ['css/base']
  },
  // target name
  src: {        
    expand: true,
    cwd:    "css/base",
    src:    "*.less",
    ext:    ".css"
    dest:   "build/"   // Destination for your compiled css files.
  }
}