Gruntjs Grunt任务未显示正确的值

Gruntjs Grunt任务未显示正确的值,gruntjs,typescript,Gruntjs,Typescript,我创建了一个grunt任务。下面是代码 grunt.initConfig({ log: { foo: [1, 2, 3], bar: 'hello world', baz: false } }); grunt.registerMultiTask('log', 'Log stuff.', function() { grunt.log.writeln(this.target + ': ' + this.data); }); 任务运行正常。PFB屏幕截图 th

我创建了一个grunt任务。下面是代码

grunt.initConfig({
  log: {
    foo: [1, 2, 3],
    bar: 'hello world',
    baz: false
  }
});

grunt.registerMultiTask('log', 'Log stuff.', function() {
  grunt.log.writeln(this.target + ': ' + this.data);
});
任务运行正常。PFB屏幕截图

this.target和this.data显示为“未定义”。为什么它显示未定义。请让我知道我错过了什么。 谢谢


编辑-在对grunt任务进行调试时,我将断点放在了任务内部。this.target和this.data显示的属性无效。

刚刚测试了以下内容,效果良好:

var grunt = require('grunt');

grunt.initConfig({
  log: {
    foo: [1, 2, 3],
    bar: 'hello world',
    baz: false
  }
});

grunt.registerMultiTask('log', 'Log stuff.', function() {
  grunt.log.writeln(this.target + ': ' + this.data);
});
如图所示:

建议
  • 使用
    require('grunt')
  • 确保您拥有最新的
    npm安装grunt--save
  • 确保您拥有最新的
    npm安装grunt cli-g
更多信息 以下是我的版本号:


您是否与GrunFile位于同一文件夹中?如果添加一个运行
log
的默认任务,然后只运行默认任务,会发生什么情况?是否意味着您的代码被
导出函数(grunt)包装{
?如果是这样,请检查您的
.ts
文件是否已重新编译。我已按照您的建议完成了所有操作,但仍显示未定义。我已在更多信息中添加了版本号。请给出
npm安装grunt-cli@0.1.13-g
a go;)我正在使用grunt版本0.4.5。让我用0.1.13试试……我已经试过了,但仍然显示unde罚款。