如何导入'into-stream'包?



代码:

const express = require('express');
const app = express();
const cors = require('cors');
const mongoose = require('mongoose');
const multer = require('multer');
const inMemoryStorage = multer.memoryStorage();
const uploadStrategy = multer({ storage: inMemoryStorage }).single('image');
const { BlockBlobClient } = require('@azure/storage-blob');
const getStream = require('into-stream');

我不能在导入"到流"模块时使用require,它给了我ESM错误:

Error [ERR_REQUIRE_ESM]: require() of ES Module

我试着在package.json中添加type:module,但如果我这样做,require将不起作用。我是否将的另一个版本安装到流中?或者我应该使用import而不是require。我正在使用node.js.

该包不再支持require(),就像本线程中提到的nodefetch一样:

错误[ERR_REQUIRE_ESM]:不支持的ES模块的REQUIRE()

您应该添加类型:"模块";到您的软件包.json,然后使用:

import getStream from "into-stream";

我建议你把它放在文件的顶部,只是为了代码风格:x

如果这不起作用,请降级到6.0.0版本,该版本可与require()一起使用,根据文档:https://www.npmjs.com/package/into-stream/v/6.0.0

最新更新