我有以下代码:
// tslint:disable
import * as React from 'react';
import { Input, InputProps } from '../atoms/Input/Input';
import { FormControl } from '../hoc/FormControl/FormControl';
export const FormInput = FormControl<InputProps>(Input);
Typescript无法编译,但会抱怨:
声明为“ React”,但从不读取其值。
如果我删除该行,则会得到:
导出的变量“ FormInput”具有或正在使用外部模块“ / node_modules / @ types / react / index”中的名称“ React.ComponentClass”,但无法命名。 [ts]导出的变量“ FormInput”具有或正在使用外部模块“ / node_modules / @ types / react / index”中的名称“ React.StatelessComponent”,但无法命名。
我在tsconfig中将declaration
设置为true,这是正确的,因为这是一个软件包。
答案 0 :(得分:1)
尝试升级到TypeScript 2.9或更高版本。 TypeScript 2.9添加了对import types的支持,这应该使得可以删除React
的导入并仍然生成声明文件。