如何使 Typescript 检测到带有区分大小写拼写错误的导入路径错误?

How to make Typescript detect import path error with a case sensitive typo?

Typescript 未检测到此拼写错误(区分大小写)。

文件名:AdminTextArea

输入错误import AdminTextArea from "@components/AdminTextarea"

打字错误是:area 而不是正确的单词 Area

我的 Typescript 环境根本没有抱怨这个。

没有显示错误,运行很顺利。

只有在我用 babel 将它转译为 JS 并将其发送到我在云端的 Docker 容器上的 运行 之后,它才触发了这个错误:

路径完美,除了错别字。

如何检测我的开发 Typescript 环境中的这个错误?这是 eslint 的事情还是我的 Typescript 配置不正确?

这取决于操作系统。某些操作系统具有不区分大小写的文件系统(MacOS 将是主要示例)。 Linux 文件系统区分大小写,因此当从不区分大小写的文件系统移动到区分大小写的文件系统时,可能会出现此错误。

不幸的是,TypeScript 对此无能为力,因为它依赖于文件系统本身。您可以添加此编译器设置:

{
  "compilerOptions": {
    "forceConsistentCasingInFileNames": true

这可能有助于检测此错误。

使用 ESLint 规则 import/no-unresolved 您可以确保正确添加区分大小写的导入。