如何以编程方式使用grunt插件?

我想在我自己的Node.js项目中使用grunt-contrib-watch插件以及其他插件。 唯一的问题是我无法弄清楚如何以编程方式与他们进行交互。 这是一个例子:

grunt.config.init({ jshint: { all: ['asourcefile.js'] } }); grunt.loadNpmTasks('grunt-contrib-jshint'); grunt.task.run('jshint'); 

Grunt加载了jshint插件,好像它可以find我的任务(使用一个名字引发错误),它似乎并没有真正执行它。

我哪里错了,这是甚至用编程方式与一个咕噜插件交互的最佳方式?

很多gruntplugins只是现有Node.js库的包装器。 JSHint的,例如 。 如果你正在编写一个Node.js应用程序,不要使用咕噜包装:

 var jshint = require('jshint'); // ...