如何为React组件使用声明文件?

时间:2019-11-24 10:01:12

标签: reactjs typescript react-tsx

我想将类型和接口定义与组件代码分开。这将使jsx文件更小,更易于阅读。

我创建了以下两个文件:

./ Header / Header.d.ts

export type HeaderProps = {
  logo?: string;
}

对于以下组件:

./ Header / Header.tsx

import React from 'react';
import { HeaderProps } from './Header'; // gives error

const Header: React.FC<HeaderProps> = ({ logo }) => (
  <header>
    <img src={logo} alt="Logo" />
  </header>
);

但是,我无法在组件中导入类型声明文件。我收到以下错误:

TS2614:模块'../Header/Header'没有导出的成员'HeaderProps'。您是要使用“从../Header/Header”导入HeaderProps吗?

我做错了吗?

1 个答案:

答案 0 :(得分:0)

在.d.ts上声明时,您不需要导入HeaderProps AFAIK