从 webstorm 执行打字稿时找不到模块“node:url”

问题描述 投票:0回答:5

我写了这个小型打字稿你好世界示例

import axios from 'axios';
import { wrapper } from 'axios-cookiejar-support';
import { CookieJar } from 'tough-cookie';

const jar = new CookieJar();
const client = wrapper(axios.create({ jar }));

client.get('https://example.com');

当我从 webstorm 运行此命令时,出现以下错误

/usr/bin/node /usr/local/lib/node_modules/ts-node/dist/bin.js /home/nayana/WebstormProjects/hello-world/hello.ts
Error: Cannot find module 'node:url'

有人知道如何解决这个问题吗? 我已经试过了

npm install node:url and url

我已将错误隔离到这一行

const client = wrapper(axios.create({ jar }));
node.js typescript
5个回答
13
投票

该问题可能与node版本有关。

axios-cookiejar-support 需要特定的节点版本(“node”:">=14.18.0 <15.0.0 || >=16.0.0")。

检查

node --version
package-lock.json

样品:

    "node_modules/axios-cookiejar-support": {
          "version": "4.0.3",
          "resolved": "https://registry.npmjs.org/axios-cookiejar-support/-/axios-cookiejar-support-4.0.3.tgz",
          "integrity": "sha512-fMQc0mPR1CikWZEwVC6Av+sD4cJuV2eo06HFA+DfhY54uRcO43ILGxaq7YAMTiM0V0SdJCV4NhE1bOsQYlfSkg==",
          "dependencies": {
            "http-cookie-agent": "^4.0.2"
          },
          "engines": {
            "node": ">=14.18.0 <15.0.0 || >=16.0.0"
          },
          "peerDependencies": {
            "axios": ">=0.20.0",
            "tough-cookie": ">=4.0.0"
          }
        },

5
投票

您可能需要安装更高版本的node.js。

我正在运行

14.17.6
,并使用 nvm 安装
16.17.0
后,我就能够运行该项目了。

如果您安装了 nvm,则可以安装特定版本的节点,例如

nvm install 16.17.0

4
投票

确保 tsconfig.json 文件中的类型数组包含“node”

{
  "compilerOptions": {
    "types": [
      // ... your other types
      "node"
    ],
    // ... your other settings
  },
}

0
投票

节点类型需要作为依赖项安装,尝试 npm i @types/node -D


-1
投票

如果您没有安装 typescript,您唯一需要做的就是在

vite.config.js
文件中更改导入行,如下所示:

import { fileURLToPath, URL } from 'node:url'

致:

import { fileURLToPath, URL } from 'url'
© www.soinside.com 2019 - 2024. All rights reserved.