gpt4 book ai didi

typescript - React 组件库 - 需要打包程序吗?

转载 作者:行者123 更新时间:2023-12-04 03:30:07 25 4
gpt4 key购买 nike

创建 React 组件库时是否需要诸如 rollup 之类的打包器?
IE。如果我所拥有的只是一个带有按钮/复选框等的简单项目作为 typescript 文件,然后在 npm 上发布,那么使用适当的配置运行 tsc 不会将所有这些都变成一个 dist 包?
那么 rollup 有什么好处呢?我读到可能是摇树,但是如果 js 文件位于它们自己的目录中,那么下面是否也导入了单个组件?

Import { Button } from ‘myLibrary/buttons’

最佳答案

简短的回答是否定的,不一定需要打包程序。
捆绑器是一个方便的工具,可以为您完成许多繁重的转译和移动文件的工作。在您的情况下,如果您有一组简单的 ts 或 tsx 文件,并且您只想将它​​们以 1 对 1 的方式转换为 js(每个 ts 文件有 1 个新的 js 文件,名称相同),您绝对可以只需使用 tsc转换您的文件,将它们输出到一些 build目录,然后发布。这是使用 typescript 创建 react 组件库的完全有效的方法。
另一方面,如果事情比 1 对 1 ts 到 js 的转换更复杂,那么打包器可能会派上用场。例如,如果您的库包含其他资源,如样式表、图像、网络 worker 文件等,tsc 将无法帮助您。您需要手动将文件复制到构建目录中所需的位置。或者您可以使用捆绑器将它们捆绑在一起归档您。或者,正如提到的另一个答案,您可能希望使用特定的 babel 转换来实现特定的兼容性,这可以通过捆绑器轻松配置。您可能想要做更多涉及的事情,例如代码拆分,或者相反(将许多条目文件转换为单个输出) - 捆绑器可以帮助解决这个问题,其中 tsc不能。
最近发现自己在用bundler做react组件库,但是我改用了tsc因为这是一个简单的场景,我更喜欢 typescript 的输出。

关于typescript - React 组件库 - 需要打包程序吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67076710/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com