如何使 4.X Typescript 项目与旧版本的 Typescript 3.X 兼容?
How to make 4.X Typescript project compatible with older version of Typescript 3.X?
如何使构建在 TS 4.X 之上的包与 3.X 兼容?比如,如果你有更新的版本 -> 使用新功能,否则 -> 使用 any
或 unknown
或旧版本支持的任何内容。
是否有可能将 directives 用于该目的?
您可以在您的 npm 中安装旧版本的打字稿(无论您想要什么,例如:`npm i --dev typescript@3.5.2)并尝试修复错误。然后将打字稿版本恢复为 v4 或任何已经存在的版本。
现在您的代码与指定的旧打字稿版本兼容(只需确保您的代码的功能在更新时不会改变)。
无法在 TypeScript 支持和不支持的功能之间切换。
例如,如果您有一个基于 TS 4.0 和 variadic tuple types
构建的库,则无法在使用 TS 3.0 的包中使用它。
但是,您可以维护两个版本的打字:TS4 之前和 TS4 之后。例如,看看 lodash or react 如何维护多个版本的打字。
如何使构建在 TS 4.X 之上的包与 3.X 兼容?比如,如果你有更新的版本 -> 使用新功能,否则 -> 使用 any
或 unknown
或旧版本支持的任何内容。
是否有可能将 directives 用于该目的?
您可以在您的 npm 中安装旧版本的打字稿(无论您想要什么,例如:`npm i --dev typescript@3.5.2)并尝试修复错误。然后将打字稿版本恢复为 v4 或任何已经存在的版本。
现在您的代码与指定的旧打字稿版本兼容(只需确保您的代码的功能在更新时不会改变)。
无法在 TypeScript 支持和不支持的功能之间切换。
例如,如果您有一个基于 TS 4.0 和 variadic tuple types
构建的库,则无法在使用 TS 3.0 的包中使用它。
但是,您可以维护两个版本的打字:TS4 之前和 TS4 之后。例如,看看 lodash or react 如何维护多个版本的打字。