我正在尝试在 grunt 插件中创建一个流并且惨遭失败......
此代码作为独立节点脚本工作:
var fs = require('fs');
var sourceFile = 'testfile.log';
fs
.createReadStream( sourceFile )
.on('data', function() {
console.log('getting data');
})
.on('end', function() {
console.log('end!');
});
输出
$ node test.js
getting data
end!
现在将其放入 grunt 插件时:
'use strict';
var fs = require('fs');
module.exports = function(grunt) {
grunt.registerMultiTask('test', 'Testing streams', function() {
var sourceFile = 'testfile.log';
fs
.createReadStream( sourceFile )
.on('data', function() {
console.log('getting data');
grunt.log.oklns('anything?');
})
.on('end', function() {
console.log('end!');
grunt.log.oklns('nothing?');
});
});
};
输出
$ grunt test
Running "test" (test) task
Done, without errors.
我正在测试:
var stats = fs.lstatSync( sourceFile );
if( !stats.isFile() ) { /*etc*/ }
如果该文件存在但我的节点测试应用程序位于同一文件夹中并且可以访问...任何帮助表示赞赏。我知道这一定不会很难做到;)