在包中导出打字稿类型

时间:2020-05-14 10:53:44

标签: javascript reactjs typescript npm

概述

我正在为共享的React组件及其相应的打字稿类型编写一个包(我们称其为myPackage)。我正在使用npm symlink将myPackage链接到我正在处理的打字稿/反应应用程序。

myPackage的结构如下:

multilist
  --index.tsx
  --types.d.ts
index.tx

这是multilist / types.d.ts文件的内容

type ILookup = {
  readonly id: number;
  readonly text: string;
};

export type MultilistProps = {
    readonly isEditing: boolean;
    readonly id: string;
    readonly labelText: string;
    readonly value: ILookup | undefined;
    readonly responseOptions: ILookup[];
    readonly singleSelect: boolean;
    readonly invalid: boolean;
    readonly onChangeHandler: (value: any) => void;
};

这是index.ts文件的内容

import { Multilist } from './multilist';
import { MultilistProps as _MultilistProps } from './multilist/types';
export { Multilist };
export type MultilistProps = _MultilistProps;

问题

从myPackage导入时,类型MultilistProps不会保留其类型结构。 VSCode中的鼠标悬停看起来像:type MulitlistProps: Any

如果我直接在myPackage / index.ts文件中声明并导出MultilistProps类型;问题已解决。

如果有人有任何想法,我将非常感激!

0 个答案:

没有答案