Gruntjs 仅在更改的文件上运行grunt任务

Gruntjs 仅在更改的文件上运行grunt任务,gruntjs,typescript,grunt-contrib-watch,grunt-ts,Gruntjs,Typescript,Grunt Contrib Watch,Grunt Ts,我有一个grunt ts任务,它将typescript文件传输到javascript。在gunt发球时,我正在传送我所有的.ts文件。然后我想将grunt配置为监视.ts文件,但只传输已更改的.ts文件 搜索web后,我找到了以下选项: Grunt任务: ts: { all: { src: ['scripts/**/*.ts'], reference: 'scripts/_references.ts' } }

我有一个grunt ts任务,它将typescript文件传输到javascript。在gunt发球时,我正在传送我所有的.ts文件。然后我想将grunt配置为监视.ts文件,但只传输已更改的.ts文件

搜索web后,我找到了以下选项:

Grunt任务:

ts: {
        all: {
            src: ['scripts/**/*.ts'],
            reference: 'scripts/_references.ts'
        }
    },
这是grunt任务,我正在收听观看活动:

grunt.event.on('watch', function (action, filepath, target) {
    switch (target) {
        case 'ts':
        {
            grunt.config(['ts.all.src'], filepath);
            grunt.config('watch.ts.tasks', 'ts');
            break;
        }
    }
问题是任务正在运行,但我正在更新到ts.all.sec变量的文件与grunt serve上的文件保持不变,任务将再次传输所有文件


谢谢

您正在寻找调用的插件。它正是你所需要的

但仅传输已更改的.ts文件

如果不使用reference.ts(因为typescript编译器将在树上运行,编译所有引用的文件,而不使用
--out
(您在这里很好…您没有使用它),并且使用外部模块,grunt ts可以做到这一点。更多:()