【问题标题】:grunt less task fails silently when not using grunt-cli不使用 grunt-cli 时,grunt less 任务会静默失败
【发布时间】:2013-06-07 05:36:47
【问题描述】:

我不知道为什么 less 任务会默默地失败。如果我使用 grunt-cli 和 Gruntfile.js 运行它,它可以正常工作,但是当我尝试将它移植到另一个脚本时,less 任务不会生成任何输出。任何有关原因的帮助或见解将不胜感激。

'use strict';

var grunt = require('grunt'),
    _ = require('underscore'),
    path = require('path'),
    fs = require('fs'),
    dir = require('node-dir');

var cssSrc = [];
var cssPaths = [];
var templates = [];
dir.paths('repo', function (err, paths) {
    if (err) {
        throw err;
    }

    _.each(paths.files, function (file) {
        if (path.extname(file) === '.less') {
            cssSrc.push(file);
        }
    });
    cssPaths = paths.dirs;

    grunt.task.loadNpmTasks('grunt-contrib-less');
    grunt.initConfig({
        less: {
            options: {
                paths: cssPaths
            },
            files: {
                'tmp/target.css': cssSrc
            }
        }
    });

    grunt.task.run('less');
});

【问题讨论】:

    标签: gruntjs


    【解决方案1】:

    grunt-cli 隐含的依赖关系:

    • 不选择
    • 查找同步
    • 解决

    未明确包含在独立脚本中。

    Gruntfile.js 脚本包含路径信息:

    • repo 使用 dir.paths 回调找到的路径
    • tmp/target.css 使用 _.each 找到的路径
    • .less 使用paths.dirs 找到的源路径

    并使用依赖项进行寻路。

    通过Rhinowsh 有一些关于runless 的无关问题,它们明确解释了进行路径查找的参数。

    参考文献

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-07-29
      • 2014-01-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多