Я пытаюсь использовать узел / машинопись для чтения файла, используя этот код:
const openFile = util.promisify(fs.open);
write(data: Buffer, index: number) {
if (!checkPieceIntegrity(data, this.pieceMap[index])) {
return false;
} else {
return openFile(this.path, "r+")
.then(fd => {
const writeStream = createWriteStream(fd, {
flags: "r+",
start: index * this.pieceLength,
autoClose: true,
})
return util.promisify(writeStream.write)(data);
})
}
}
, но когда я пытаюсь скомпилировать с tsc
, я получаю сообщение об ошибке:
Argument of type 'number' is not assignable to parameter of type 'PathLike'
.
В отношении этой строки:
const writeStream = createWriteStream(fd, {
.
В документе node.js говорится, что fs.open
возвращает дескриптор файла, а не число, так почему же машинописьдумаете, fd
- это число, и как я могу его распознать как дескриптор файла?