我正在使用打字稿和纱线工作区。我具有以下文件夹结构:
- UI Library (Exports React Components)
- Main App
UI库具有一个主索引文件,主应用将从该主文件导入。
UI库主要index.js:
export { default as Icon } from './Icon';
然后在我导入的主应用中,如下所示:
import { Icon } from 'ui-library';
如何使用打字稿声明UI库?
我尝试了以下操作,但我想您无法导入相对路径。在我的ui lib中,我创建了一个.d.ts文件,类似
import { TIconProps } from "./Icon";
declare module 'ui-library' {
export function Icon(props: TIconProps): React.ReactNode;
}
我收到错误Invalid module name in augmentation.
答案 0 :(得分:0)
我可以使用import("mod")
访问非模块脚本。
https://www.typescriptlang.org/docs/handbook/release-notes/typescript-2-9.html#import-types
像这样:
declare module 'ui-library' {
export const Icon: React.FC<import('./Icon').TIconProps>;
}