如何使用全局安装的grunt-html?

Mic*_*ael 9 node.js npm gruntjs

我想用grunt-htmltask来检查我的HTML文件.

我安装任务在本地npm install grunt-html和使用它grunt.js,如下所示:

module.exports = function (grunt) {

    grunt.loadNpmTasks('grunt-html');

    grunt.initConfig({

        htmllint:{
            all:['*.html']
        },

    });

};

现在我想在全球范围内安装grunt-html任务.

遗憾的是,删除本地grunt-html节点模块并在全局 安装后grunt无法加载任务.跑步的时候grunt htmllint我得到:

>> Local Npm module "grunt-html" not found. Is it installed?

如果我grunt.loadNpmTasks('grunt-html');grunt.js文件中删除我得到:

 Task "htmllint" not found. Use --force to continue. 

所以我的问题是如何使用全局grunt-html安装?

smi*_*lay 13

loadNpmTasks根据以下文档,gruntjs目前不支持从全局安装的grunt模块加载grunt.loadNpmTasks:

此插件必须通过npm本地安装,并且必须相对于grunt.js gruntfile.

当然,如果你真的坚持全局安装它,那么hack就是ln -s从你的本地node_modules目录到你的全局node_modules/grunt-html目录创建一个symlink().

如果您正在进行模块开发,另一种方法是使用不太受欢迎的npm link命令,该命令允许您在本地安装系统中其他位置存在的模块(npm help link有关使用信息,请参阅参考资料).

但是,这两种方法都不允许您在grunt-html全局范围内真正安装软件包.