Bij*_*joy 6 typescript typescript-typings typescript2.0
我最近转向 typescript 来编写 React-Native 应用程序,我注意到的一件事是,我可以使用类型而无需导入/导出它。我已将所有定义文件放在@types 文件夹下。
这是不导出和导入类型的正确使用方法吗?
如果我从“node_modules”(比如 react-native 的 ViewStyle)导入外部类型并在我的界面中使用它,它会在 IDE 中显示“找不到名称”,我必须导出界面并在需要的地方导入它来解决这个问题.
注意:我正在尝试减少导入,IDE:vscode
第一个选项:
您可以使用TS 命名空间- 它将减少应用程序中的导入量(您不必手动从命名空间导入每种类型)。例如,假设我们有app.namespace.ts文件:
export namespace AppConfig {
export interface BaseConfig {
url: string;
port: number;
}
export type MyMap<T> = {
[key: string]: T;
}
export class Settings {
public p1: boolean;
public p2: number;
}
}
Run Code Online (Sandbox Code Playgroud)
用法:
import { AppConfig } from './app.namespace';
// ...
baseConfig: AppConfig.BaseConfig;
myMap: AppConfig.MyMap<number>;
// ...
Run Code Online (Sandbox Code Playgroud)
第二个选项:
只需.d.ts在项目中创建文件(通常每个应用程序子模块都有自己的模型文件,因此您可以some-feature.d.ts在功能文件夹中创建)。在这种情况下,您可以使用 d.ts 文件中的任何类型而无需导入。
检查这个Stackblitz 演示
| 归档时间: |
|
| 查看次数: |
4270 次 |
| 最近记录: |