3

我正在尝试使用 React 设置一个新项目,并且正在考虑用 TypeScript 替换 PropTypes。

但我想知道我是否会遇到集成问题。

例如:

  • 将 Redux(或react-redux)与 TypeScript + React 一起使用
  • 集成不是使用 TypeScript 创建的组件的问题
  • 图书馆的问题,如react-bootstrap

我主要关心的是从 TypeScript 导入非 TypeScript 代码。

有这方面的线索或经验吗?

4

3 回答 3

6

您可以在 Typescript 项目中导入 Javascript 库。不幸的是,我一直这样做。一些库具有社区类型的类型,您可以通过运行npm i @types/mypackage --dev.

否则,您将不得不为包创建一个空的 TS 模块声明:

按照惯例,在您的目录中的某处创建一个名为mypackage.d.ts的文件。src(我通常把它放在src/types/

mypackage.d.ts应该包含declare module "mypackage";

现在,您从mypackage导入的任何内容都将具有any类型。

于 2019-08-14T12:34:04.720 回答
2

well you can use react redux with typescript just you need to install react-redux types:

npm install @types/react-redux

and types for react-bootstrap :

npm install  @types/react-bootstrap

but still there is some problem with FormControl and Button events!

于 2019-08-14T12:35:15.833 回答
1

有一个名为的开源组织DefinitelyTyped负责向所有默认不是 TS 的库添加类型。

在您的情况下,如果您使用的是react-redux,您可能希望以@types/react-redux这种方式安装。

npm install @types/react-redux --dev

查看 Github 中的组织:

https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/react-redux

这只是他们为不同库提供数百种类型包的示例。

于 2019-08-14T12:31:46.667 回答