我正在工作的应用程序有@types/react-router
和@types/react-router-dom
来支持react-router
和react-router-dom
api的类型。我现在正试图将路由器升级到6,我理解类型版本必须相应地更新。有没有一种方法可以找到@types/react-router
和@types/react-router-dom
与react-router
的哪些版本一起工作?react-router-dom
包吗?
也在苦苦寻找。在node_modules/@types/react-router/index.d.ts
中有一个类似
// Type definitions for react-router 3.0
一般来说,你在DefinitelyTyped项目的文档中看到的是"DefinitelyTyped包的版本如何与相应库的版本相关联?"应该适用。类型声明文件的作者将(必须)在类型声明文件的最上面放一行,比如// Type definitions for Node.js <major version of the library that these types correspond to>.<major version of the library that these types correspond to>
。例// Type definitions for Node.js 10.12
。项目中的发布工具将自动为发布增加补丁号(类型包的补丁号与实际包的补丁号无关)。
所以你能做的就是在types包的类型声明文件中查找第一行。如果您不知道在哪里查找该文件,请查看包。json文件并查看"types"
属性,该值将指向类型声明文件的路径(另请参见TypeScript文档中发布类型的内容)。
理想情况下,你想要做的是匹配主要和补丁号,我很确定你可以使用一个依赖版本约束,使用一个领先的~
和匹配主要和次要版本号。
请注意,正如DefinitelyTyped项目文档中所述,有时类型包的次要版本可能落后于实际包,因为维护类型包的人通常与维护实际包的人是分开的。