使用“import”导入的所有内容都会获取类型,但 require() 不会

Ota*_*dze 3 node.js node-modules typescript

不知道这个问题是否与VS Code有关。但基本上当使用这种语法在打字稿中导入包时

import express from "express";
Run Code Online (Sandbox Code Playgroud)

我得到了类型定义以及代码本身。但每当我使用

const express = require("express");
Run Code Online (Sandbox Code Playgroud)

它有any类型。这并不express具体。

顺便说一句,我是 Node.js 的新手。

Ben*_*Ben 5

如果您需要使用require它来加载模块(因为您位于 CommonJS 模块中或出于任何原因),您仍然可以将其与 import 语句一起使用。它也会加载类型。

import express = require('express');
Run Code Online (Sandbox Code Playgroud)