0
我有这样的代码:节点流答应错误处理
let generateSmth = function(len, j, stream, headers) {
len--;
j++;
if (len === 0) {
stream.write(headers.map(function(v) {return v + '_' + j;}));
stream.end();
} else {
if (stream.write(headers.map(function(v) {return v + '_' + j;}))) {
generateSmth(len, j, stream, headers);
} else {
stream.once('drain',()=>{generateSmth(len, j, stream, headers)});
}
}
};
const fs = require('fs'),
myStream = fs.createWriteStream('test.txt');
let myPromise = new Promise((resolve, reject)=>{
try {
generateSmth(10000, 0,()=>{
resolve(()=>{
});
}, myStream);
} catch (error) {
reject(error);
}
});
我了解到的try/catch是不是赶上错误generateSmth功能适当的方式。但我不明白如何在我的函数中使用流时捕获错误? 任何人都可以帮助我吗?谢谢。
小费,说明你想要什么你的代码做的,就是它的目的,而不是只粘贴一段代码块,我们要种猜猜为什么它在那里。你想实现什么? –
我需要写入由我的函数generateSmth生成的约10000行的文件。另外我应该使用Promises。 – Michiko