tdesign-vue-next icon indicating copy to clipboard operation
tdesign-vue-next copied to clipboard

TD Mono: pro components

Open zhangpaopao0609 opened this issue 11 months ago • 2 comments

pro components

现状和问题

之前规划的 pro components 是直接放在的 components 下的,比如 chat,结构是 components/chat。 但真正实施后发现有几个大的问题:

  1. 出口文件混乱 因为 pro components 都是要单独发包的,因此打包时需要属于自己的 index.ts 和 index-lib.ts,这就与当前的 components 重合了,因此临时使用了 pro-components.ts 和 pro-components-lib.ts,这显然不行,这不仅丑陋,同时还无法满足后续多 pro components 的需求

  2. 构建混乱 按照现在的方式,一方面会侵入 tdesign-vue-next 的打包(需要排除 pro components),另一方面出口文件名需要 fs 重写

3.语义模糊 因为 pro components 需要直接依赖 tdesign-vue-next ,但 components 下的组件都是相对引用的,这在语义上就和其它基础组件不一样了,开发起来也会混乱

解决方案

单独将 pro-components 拎出来,和 components 一个层级,里面包含 chat 等,这样 chat 就可以有自己的 index.ts,index-lib 等了,然后把复用的部分,hooks types 也拎出来。

这样做后好处如下:

  1. 解决打包的所有问题
  2. 从结构解决了为啥这些组件是引入的 tdesign-vue-next,而不是相对路径

分步实现

  1. pro-components 拎出来 pro-components/chat
  2. 公共部分抽离
  • hooks
  • utils
  • types

zhangpaopao0609 avatar May 12 '25 13:05 zhangpaopao0609

👋 @zhangpaopao0609,感谢给 TDesign 提出了 issue。 请根据 issue 模版确保背景信息的完善,我们将调查并尽快回复你。

github-actions[bot] avatar May 12 '25 13:05 github-actions[bot]

API 平台改造

  • [ ] 新增pro components分类,输出文档、类型都需同步调整至pro-components内,同时对基础组件的依赖调整为tdesign-xx

uyarn avatar May 15 '25 15:05 uyarn