【发布时间】:2019-03-08 08:10:40
【问题描述】:
许多库都是为 Web、Node 服务器和 React Native 等移动应用程序编写的。因此,它们可以通过<script /> 标签、对require() 的调用或使用现代的import 关键字来包含,尤其是在您使用Webpack 之类的工具或React Native 之类的框架时。
因此,它们的 TypeScript 依赖项通常不仅会使用 export 关键字公开类型,还会在全局命名空间中公开类型。这允许在浏览器上使用 TypeScript 的代码并包含可能来自 CDN 的库,使用 <script /> 标签来使用在这些环境中全局可用的类型。
例如,jquery、big.js 以及更多的库都使用这种模式。
当您编写现代 JavaScript 但使用为浏览器案例公开全局类型的库时,如何在 Node 和 React Native 等实际不可用的环境中排除这些类型进入全局命名空间?
【问题讨论】:
标签: javascript node.js typescript react-native