@codidi/components-lib
v1.0.1
Published
- 创建tsconfig.build.json - npx tsc -p tsconfig.build.json --module ESNext --outDir dist/esm - npx tsc -p tsconfig.build.json --module commonjs --outDir dist/cjs - 编译样式 - npx sass ./src/Calendar/index.scss ./dist/esm/Calendar/index.css - npx sass ./src
Readme
构建esm,commonjs模块
- 创建tsconfig.build.json
- npx tsc -p tsconfig.build.json --module ESNext --outDir dist/esm
- npx tsc -p tsconfig.build.json --module commonjs --outDir dist/cjs
- 编译样式
- npx sass ./src/Calendar/index.scss ./dist/esm/Calendar/index.css
- npx sass ./src/Calendar/index.scss ./dist/cjs/Calendar/index.css
构建umd模块
- 添加webpack.config.js
构建部分我们分析过很多组件库,都是一样的: commonjs 和 esm 的代码通过 tsc 或者 babel 编译产生 umd 代码通过 webpack 打包产生 css 代码通过 sass 或者 less 等编译产生 dts 类型也是通过 tsc 编译产生
ps
dependencies:当项目依赖的其他包(比如React组件库)与项目中的某个dependencies包存在版本冲突时,npm会为该依赖保留一份副本,以确保项目能够正常运行而不受其他包的影响
peerDependencies:
- 当存在版本冲突时,peerDependencies会提示开发者去解决冲突,而不是像dependencies那样保留一份副本。
- 使用peerDependencies的目的是确保安装的库版本与项目所依赖的版本一致,从而减少版本兼容性问题
- 在插件或库的开发中,peerDependencies常用于告知用户项目运行时所依赖的某些库或框架的版本,以确保插件或库能够与其他依赖项协同工作
