小编Luc*_*aud的帖子

将“GridFSBucketWriteStream”转换为“WritableStream”类型不可能吗?

GridFSBucketWriteStream最近,类型转换WritableStream变得不可能并导致类型错误。

const wst = svcMng.DBService.projectImageGrid.openUploadStream(image.name);
const uploadPromise = new Promise((resolve, reject) => {
    const read = new Readable({
        read() {
            this.push(image.data);
            this.push(null);
        }
    });

    read.on('error', (err) => {
        reject(err);
    });
    read.on('end', () => {
        resolve(null);
    });
    read.pipe(wst);
});
await uploadPromise;
Run Code Online (Sandbox Code Playgroud)

read.pipe(wst)导致:“GridFSBucketWriteStream”类型的参数不可分配给“WritableStream”类型的参数。

wst是一种GridFSBucketWriteStream类型,应该可以转换为WritableStreamGridFSBucketWriteStream实现NodeJS.WritableStream

当然read.pipe(wst as any)可以解决这个问题,但我想避免它。

read.pipe(wst as NodeJS.WritableStream)也不工作。

版本:

  • 猫鼬:6.1.4
  • 打字稿:4.1.2
  • 节点 v12.16.3

预先感谢您的帮助!

mongoose mongodb node.js typescript

2
推荐指数
1
解决办法
501
查看次数

标签 统计

mongodb ×1

mongoose ×1

node.js ×1

typescript ×1