0.1.13 • Published 1 year ago
@segi/design-vue v0.1.13
segi-design-vue
项目结构 完全参照 element-plus
指定 pnpm
做为包管理器,利用其 workspace 特性,方便开发过程
开发
pnpm run dev
构建
pnpm run build
发布
发布前 修改 @segi/design-vue 版本号,参考 https://semver.org/lang/zh-CN/
然后
pnpm publish --access=public --filter @segi/design-vue -r
疑问
- 生成 d.ts 脚本中 检查 type 类型是应用了哪个 tsconfig
- 用 tsc 命令怎么执行 tsconfig 检查执行路径的指定文件是否有错误
- language server 怎么查看当前文件应用的是 哪个 tsconfig
import {App} from "vue"
ts 报错是为什么- 用 tsc 命令,怎么样才能打印出和 ts-morph-Diagnostics 一致的错误
- 项目根目录 global.d.ts 文件
完善
生成 d.ts 文件后,复制到对应的文件路径中国际化,实现方案可以方便的与业务系统中的国际化整合,组件库的国际化和业务项目使用的方案不一致,所以不冲突按需加载 打包 css/less- 使用 rollup 构建单一文件,cdn 可用(npm 引入的话,直接用 es 里面的即可,支持 tree shaking)
- 提取 公共 依赖 放到 最外层的 package 中
build 时,报错Could not resolve import "@segi/design-vue/locale" in /home/ming/segi_code/segi-design-vue/packages/segi-design-vue/locales.ts using exports defined in /home/ming/segi_code/segi-design-vue/packages/segi-design-vue/package.json. Could not resolve import "@segi/design-vue/locale" in /home/ming/segi_code/segi-design-vue/packages/segi-design-vue/locales.ts using exports defined in /home/ming/segi_code/segi-design-vue/packages/segi-design-vue/package.json. '@segi/design-vue/locale' is imported by ../../packages/segi-design-vue/locales.ts, but could not be resolved – treating it as an external dependency
SgDesignVueResolver 支持 unplugin-vue-components/vite,暂时只支持 less 格式 导入,css 格式 导入回头再搞
- 使 packages 通过 typeCheck
win 环境启动 play 包,报错-优化自动引入插件- 整理 包中的 package.json 中的依赖,以及依赖所在位置
图标库做特殊处理(包括自动引入)- 基于项目目录结构 做出说明文档
package 中 优化 exports 字段,使 import 时更简洁方便- 构建中会报错,认知中不影响项目正常运行,有空再看看
'@segi/design-vue-components/base/css' is imported by ../../packages/components/title/style/css.ts, but could not be resolved – treating it as an external dependency
- 梳理 tsconfig.json 文件
- /home/ming/segi_code/segi-design-vue/packages/utils 梳理其中的方法,结合 segidV 做对应改动(更换名字,不需要的或者个别字符串参数等替换)
- 静态资源存放位置
- icon 组件 默认附带一个 类名效果就是可以旋转的动画
注意
- 如果使用 vue 文件开发组件,components 中 的 vue 文件,不要添加 标签
待确认
- antDv 提供的 hook 和指令要不要 通过 segiDv 暴露出去
- eslint warn 状态提醒,可以通过 husky/lint-staged
- play 包中的 src 目录中的文件是否要 版本控制?
- _rollup 有一个奇怪的行为,如果打包出来的产物存在 node_modules 文件夹,则目录结构会混乱(把 packages/segi-design-vue 中的 package.json 中的 dependencies 给去掉再打包就会触发),因为该作为外部依赖的依赖没有作为外部以来,但是不应该使目录混乱的