导入“uuid”时无法在模块外使用导入语句 [重复]

Posted

技术标签:

【中文标题】导入“uuid”时无法在模块外使用导入语句 [重复]【英文标题】:Cannot use import statement outside a module when importing "uuid" [duplicate] 【发布时间】:2021-05-29 16:23:17 【问题描述】:

尝试将用户模型中的“uuid”导入为 import v1 as uuidv1 from "uuid";

但是,我不知道为什么它会给出这样的 syntaxError 从“uuid”导入 v1 as uuidv1 ; ^^^^^^SyntaxError: 不能在模块外使用 import 语句

【问题讨论】:

什么版本的节点? 我发布的答案与链接中提供的答案不同 【参考方案1】:

-我假设你在你的 uuid.js 中使用了 export.modules。

我还假设 uuid.js 文件与您要导入函数的目录位于同一目录中。

现在,如果您想将 uuid.js 中的函数使用到另一个文件中,那么您可以使用 require() 将函数导入到另一个 js 文件中。尝试使用以下语法导入函数。

const v1=require(./uuid); 现在您可以使用 v1.uuidv1();在你的 js 文件中。

但是,如果您想专门使用您使用过的语法,那么您可以参考 Daniel A White 提供的链接

【讨论】:

感谢 Daniel 和 Shikar,我已将导入更改为“var uuid = require('uuid');”并像这样使用“this.salt = uuid.v1();”它奏效了。再次感谢大家! @JIGNESHPATEL 请将我的回答标记为已接受

以上是关于导入“uuid”时无法在模块外使用导入语句 [重复]的主要内容,如果未能解决你的问题,请参考以下文章

导入 ReactJS 时出现“未捕获的语法错误:无法在模块外使用 import 语句”

Typescript 和 Node.js 错误“SyntaxError:无法在模块外使用导入语句”

Node12/next9 SyntaxError:无法在模块外使用导入语句

导入 ECMAScript 6 时出现“未捕获的语法错误:无法在模块外使用 import 语句”

尝试在 Jasmine 规范文件中导入类时出现“语法错误:无法在模块外使用导入语句”

Mocha + TypeScript:不能在模块外使用导入语句