ReferenceError:导入@google-cloud/storage 时分配的左侧无效

Posted

技术标签:

【中文标题】ReferenceError:导入@google-cloud/storage 时分配的左侧无效【英文标题】:ReferenceError: Invalid left-hand side in assignment when importing @google-cloud/storage 【发布时间】:2019-10-11 06:55:00 【问题描述】:

当我在 nodejs 中导入 @google-cloud/storage 时出现错误,

const gcs = require('@google-cloud/storage');

当我评论该行时,一切正常。 以下是我得到的错误:

/home/trd/TRD/new-rapi/copy/676cb539092d21127ded33478d1073ab6886fc33/node_modules/pify/index.js:3 常量 processFn = (fn, opts) = ^^^^^^^^^^

ReferenceError:赋值中的左侧无效 在新脚本 (vm.js:79:7) 在 createScript (vm.js:251:10) 在 Object.runInThisContext (vm.js:303:10) 在 Module._compile (internal/modules/cjs/loader.js:657:28) 在 Object.Module._extensions..js (internal/modules/cjs/loader.js:700:10) 在 Module.load (internal/modules/cjs/loader.js:599:32) 在 tryModuleLoad (internal/modules/cjs/loader.js:538:12) 在 Function.Module._load (internal/modules/cjs/loader.js:530:3) 在 Module.require (internal/modules/cjs/loader.js:637:17) 在需要(内部/模块/cjs/helpers.js:22:18) 在对象。 (/home/trd/TRD/new-rapi/copy/676cb539092d21127ded33478d1073ab6886fc33/node_modules/make-dir/index.js:4:14) 在 Module._compile (internal/modules/cjs/loader.js:689:30) 在 Object.Module._extensions..js (internal/modules/cjs/loader.js:700:10) 在 Module.load (internal/modules/cjs/loader.js:599:32) 在 tryModuleLoad (internal/modules/cjs/loader.js:538:12) 在 Function.Module._load (internal/modules/cjs/loader.js:530:3)

【问题讨论】:

您使用的是什么版本的节点?你的代码是否需要被转译?这似乎与您的环境不支持箭头功能有关。 (我假设这是processFn = (fn, opts) = 之后的内容,但它被切断了,所以我不确定。 【参考方案1】:

你可以尝试像这个例子那样导入库

const Storage = require('@google-cloud/storage');
// Creates a client
const storage = new Storage();

一个完整的例子在 github quick start example

如果问题仍然存在,可能与您的本地环境有关,我建议您尝试在 linux VM 中设置一个干净的开发环境并使用 Node.JS 10,这是为了放弃该问题与任何配置错误。

【讨论】:

@therightdoctors 您使用的是什么版本的节点?您能否分享您尝试导入云存储的功能?【参考方案2】:

您在导入时声明了一个常量。

我建议你应该使用

让 gcs = require('@google-cloud/storage');

将“const”替换为“let”或“var”。它应该会有所帮助。

【讨论】:

将导入的类声明为常量不会让您更改类范围内的任何变量。即使没有,我很确定 JS 不会让您将类作为常量导入,以防止类尝试修改其自己的值之一(这会触发常量错误。)跨度> 它也给出了同样的问题

以上是关于ReferenceError:导入@google-cloud/storage 时分配的左侧无效的主要内容,如果未能解决你的问题,请参考以下文章

使用 google.visualisation.data.join 和 doGet() - ReferenceError: "google" is not defined

ReferenceError:从“apollo-boost”导入 ApolloClient 时未定义要求

开玩笑 - ReferenceError:未定义导入的函数

ReferenceError: 导入外部js文件时未定义Vue

ReferenceError:您正在尝试在 Jest 环境被拆除后“导入”一个文件

Google Chrome 上的 ReferenceError 但 Firefox 上没有(浏览器错误?)