尝试导入错误:“@module”不包含默认导出(作为“模块”导入)

Jon*_*hej 6 build typescript webpack create-react-app craco

我正在使用 craco 创建一个反应应用程序。这是我的 ts 配置:

{
  "compilerOptions": {
    "target": "es5",
    "lib": [
      "dom",
      "dom.iterable",
      "esnext"
    ],
    "allowJs": true,
    "skipLibCheck": true,
    "esModuleInterop": true,
    "allowSyntheticDefaultImports": true,
    "strict": true,
    "forceConsistentCasingInFileNames": true,
    "noFallthroughCasesInSwitch": true,
    "module": "esnext",
    "moduleResolution": "node",
    "resolveJsonModule": true,
    "isolatedModules": true,
    "noEmit": true,
    "jsx": "react-jsx",
    "downlevelIteration": true
  },
  "include": [
    "src"
  ]
}

Run Code Online (Sandbox Code Playgroud)

我还使用 git 子模块从中导入 utils。

当我运行时craco start一切正常。但是当我运行时craco build我收到此错误:

Attempted import error: '@pinata/sdk' does not contain a default export (imported as 'pinataClient')
Run Code Online (Sandbox Code Playgroud)

这是pinataClient导入的方式:

import pinataClient "@pinata/sdk";
Run Code Online (Sandbox Code Playgroud)

当我将此行编辑为

const pinataClient = require("@pinata/sdk");
Run Code Online (Sandbox Code Playgroud)

这是tsconfig子模块的文件:

Attempted import error: '@pinata/sdk' does not contain a default export (imported as 'pinataClient')
Run Code Online (Sandbox Code Playgroud)

我认为这是一个 webpack 错误,但我似乎无法弄清楚。