【问题标题】:"SyntaxError: Cannot use import statement outside a module" with a npm module带有 npm 模块的“语法错误:无法在模块外使用 import 语句”
【发布时间】:2020-10-08 16:13:52
【问题描述】:

我正在尝试使用 npm 模块 (https://github.com/AmyrAhmady/steamdb-js) 但是当我使用示例代码时, 我收到“语法错误:无法在模块外使用 import 语句”。

这是示例代码:

import { Game } from "steamdb-js";

async function main() {
  const game = new Game(271590);
  await game.fetchData();
  const data = await game.parse();
  //console.log(data); // This prints out all parsed data, you can use it for easier in-code usage
  console.log(game.getGameInfo());
}

main();

这是错误:

PS C:\Users\user\Desktop\Développement\TEST> node .\index.js
C:\Users\selim\Desktop\Développement\TEST\index.js:1
import { Game } from "steamdb-js";
^^^^^^

SyntaxError: Cannot use import statement outside a module
    at wrapSafe (internal/modules/cjs/loader.js:1116:16)
    at Module._compile (internal/modules/cjs/loader.js:1164:27)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1220:10)
    at Module.load (internal/modules/cjs/loader.js:1049:32)
    at Function.Module._load (internal/modules/cjs/loader.js:937:14)
    at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:71:12)
    at internal/main/run_main_module.js:17:47

是我的错还是 npm 模块的错?

【问题讨论】:

    标签: node.js npm import


    【解决方案1】:

    自从创建此线程以来已经有一段时间了,但我认为当涉及到我创建的库时,我有责任回答这个问题。

    首先,example和steamdb-js代码使用的是ES5标准(比如import和export语法) 您需要先启用这些,您可以使用最新的可用 Nodejs 版本,或使用转译器;如果您不使用 Node +v13 或不知道如何操作,这是我的建议:

    现在一切正常,steamdb-js 应该能够“”“执行”“”

    我对@9​​87654328@ 施加压力,因为现在有一个问题,我们知道 steamdb 正在使用 CloudFlare,他们启用了“Under Attack”模式,这是一个可以绕过的问题,但可悲的是 CloudFlare 的新的变化,我怀疑当前的库目前是否可以正常工作,我会在找到方法后立即更新我的库。

    谢谢!

    (我第一次在 Stackoverflow 上发帖!)

    【讨论】:

      【解决方案2】:

      最简单的方法之一是将"type": "module" 添加到您的package.json 文件中。在Node Documentation中有更深入的描述。

      【讨论】:

      • 我已经做到了,但我的控制台说:SyntaxError: The requested module 'steamdb-js' is expected to be of type CommonJS, which does not support named exports.
      猜你喜欢
      • 2020-10-10
      • 2020-06-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多