我如何应用@typescript-eslint/consistency-type-imports仅用于检测类型或接口

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

我观察到 @typescript-eslint/consistency-type-imports 将我的类组件声明为导入声明中的类型:

import type { Client } from "../shared/domains/client";

我期望有:

import { Client } from "../shared/domains/client";

我认为当我们声明时:

import type AType from "./Abc"

我们确信 AType 是导出声明中的类型或接口。

我觉得很奇怪:

"import type AClass from "./Abc"

并且看到 AClass 是一个类组件,而不是类型或接口。

这就是我问是否有一个选项可以添加的原因,以便使用 @typescript-eslint/consistent-type-imports 并仅应用类型或接口导出组件的更改。

reactjs typescript eslint typescript-eslint
1个回答
0
投票

正如@jonrsharpe所说

导入类型 ... 当您只需要导入的类型而不是值时使用。

import
:导入类型和值

import
语句用于从模块导入类型和值(函数、类、变量、对象等)。当您使用常规
import
时,TypeScript 将导入类型信息以及实际的运行时值。

import type
:仅导入类型

TypeScript 中引入的

import type
语句用于仅从模块导入类型信息。它表明您有兴趣使用导出值的类型,而不是实际的运行时值。

此外,我们使用导入类型将类型用于类型检查目的,而不在发出的 JavaScript 代码中包含模块的实际运行时值。

参考: https://medium.com/@quizzesforyou/import-vs-import-type-in-typescript-8e5177b62bea

© www.soinside.com 2019 - 2024. All rights reserved.