【问题标题】:Node complain about import library when its all there当它全部存在时,节点抱怨导入库
【发布时间】:2022-11-02 23:49:29
【问题描述】:

我尝试使用第三方库(@craftzing/akeneo-api)编写节点脚本,甚至在使用该库之前,就在导入语句中,由于缺少模块而出现错误。它确实找到了 akeneo-api 模块,但是这个模块本身从它自己的文件中导入了一个 http-client 并且它无法导入它(即使文件在那里)。我尝试评论 http-client 导入以查看它是否是一个特定问题,但它在下一次导入时失败,因此由于某种原因它无法在我正在使用的库中加载导入。

有任何想法吗?

% node scripts/sync.js
node:internal/errors:477
    ErrorCaptureStackTrace(err);
    ^

Error [ERR_MODULE_NOT_FOUND]: Cannot find module '/Users/test/scripts/node_modules/@craftzing/akeneo-api/dist/mjs/http-client' imported from /Users/test/scripts/node_modules/@craftzing/akeneo-api/dist/mjs/index.js
    at new NodeError (node:internal/errors:387:5)
    at finalizeResolution (node:internal/modules/esm/resolve:429:11)
    at moduleResolve (node:internal/modules/esm/resolve:1006:10)
    at defaultResolve (node:internal/modules/esm/resolve:1214:11)
    at nextResolve (node:internal/modules/esm/loader:165:28)
    at ESMLoader.resolve (node:internal/modules/esm/loader:844:30)
    at ESMLoader.getModuleJob (node:internal/modules/esm/loader:431:18)
    at ModuleWrap.<anonymous> (node:internal/modules/esm/module_job:76:40)
    at link (node:internal/modules/esm/module_job:75:36) {
  code: 'ERR_MODULE_NOT_FOUND'
}

这是到目前为止的脚本(只是导入)

import client from '@craftzing/akeneo-api';
console.log('test');

【问题讨论】:

    标签: node.js import


    【解决方案1】:

    您应该能够通过在您的node 命令中包含--es-module-specifier-resolution=node 来解决此问题。如在

    node --es-module-specifier-resolution=node scripts/sync.js
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多