谷歌云存储需求未定义



我正在编写一个React web应用程序,并希望将用户的文件保存到GCP。首先,我在后端服务器(express(上获取文件,检查大小和MIME类型,然后我想将这些文件保存到GCP。我阅读文档并在代码中进行同样的处理。但我有一个错误"ReferenceError:require未定义"有人经历过那个问题吗?

node -v 13.13.0
npm  -v 6.14.4
express -v 4.17.1

错误消息:

[nodemon] starting `node --experimental-modules --es-module-specifier-resolution=node server.js`
node     | (node:84) ExperimentalWarning: The ESM module loader is experimental.
node     | file:///usr/src/meow/routes/master.js:11
node     | const { Storage } = require('@google-cloud/storage');
node     |                     ^
node     |
node     | ReferenceError: require is not defined
node     |     at file:///usr/src/meow/routes/master.js:11:21
node     |     at ModuleJob.run (internal/modules/esm/module_job.js:110:37)
node     |     at async Loader.import (internal/modules/esm/loader.js:179:24)
node     | [nodemon] app crashed - waiting for file changes before starting...

我的代码

const { Storage } = require('@google-cloud/storage');
const storage = new Storage(
{ keyFilename: "../config/GCP_key.json" }
);

我发现了问题!promlem使用ECMAScript模块。我重构代码:将常量XXX=require(XXX(上的所有'import XXX从"XXX"更改为删除package.json中的类型:"module"删除nodemon statup命令中的"--实验模块">

最新更新