即使安装了@types/node,Typescript 也找不到模块“fs”

Posted

技术标签:

【中文标题】即使安装了@types/node,Typescript 也找不到模块“fs”【英文标题】:Typescript Cannot find Module "fs" even though @types/node installed 【发布时间】:2019-07-03 03:44:34 【问题描述】:

我知道通常的解决方法是安装 @types/node ,我已经安装了 10.12.23 个。

这似乎是一个奇怪的错误,我对此感到有些困惑。我安装了 2 个其他 npm 模块: config (需要 @types/config )和 firebase-admin ,它们必须有自己的 typescript 类型。也使用 VS 代码版本 1.31 。我什至尝试安装旧版本的@types/node

以下工作正常

import admin from "firebase-admin";
import fs from "fs";

以下失败:找不到模块'fs'

import admin from "config";
import fs from "fs";

以下失败:找不到模块'fs'

import fs from "fs";

我没有使用任何其他包/webpack 或其他任何东西。任何想法都表示赞赏。

【问题讨论】:

呃,你是说import fs from "fs"; 有效;那么你是说import fs from "fs"; 因“找不到模块“fs”而失败?问:它是什么???问:失败/成功案例有什么“不同”?仅供参考,“fs”是“核心 NodeJS 模块” - 它应该始终可用。 是的,我知道@paulsm4!疯了——我很困惑。只有在声明中有另一个内置类型的模块时,它才能找到 fs。可能是打字稿或 VS Code 中的错误? 你能试试import * as fs from "fs";,看看这对你有没有影响?另外,您的 TypeScript 配置中的 moduleResolution 是什么? 另一个建议:核对项目文件夹中的node_modules 目录,然后运行npm install。并且一定要停止并重新启动 VSCode。 啊,谢谢。 node_modules 目录在 VS Code 中显示为空 .. 但它实际上并不是空的。清除一切并正常工作。谢谢@paulsm4 【参考方案1】:

在你的 ts/js 文件中导入 fs

import fs from 'fs'

【讨论】:

OP 已经说过你建议的“解决方案”对他来说失败了。

以上是关于即使安装了@types/node,Typescript 也找不到模块“fs”的主要内容,如果未能解决你的问题,请参考以下文章

如何排除`node_modules/@types/**/node_modules`?

在tsconfig中禁用@ types / node

TypeScript - 找不到名称“进程”

搭建Node.js Redis开发环境

node_modules/@types/node/index.d.ts(20,1):错误 TS1084:无效的“参考”指令语法

`@types/node` 的最新更新版本正在创建一个错误。以前的版本运行良好