构建React组件库:flowbite与react-icons应归为dependencies还是devDependencies?
关于React组件库中flowbite和react-icons的依赖分类判断
核心判断原则很简单:如果你的组件库在运行时(即用户使用你的组件时)需要依赖这些包的代码,就放到dependencies;仅开发阶段(比如本地调试、构建打包、测试)用到的,才放到devDependencies。
针对你用到的两个包:
- flowbite:如果你的组件库直接使用了它的组件、样式或工具类(比如组件中引入flowbite的UI组件、依赖它的样式体系),那么用户安装你的组件库后,必须要有flowbite才能正常渲染组件,因此必须放在
dependencies。 - react-icons:如果你的组件代码里直接引入了它的图标组件(比如
import { FaUser } from 'react-icons/fa'),用户的项目里必须存在这个包才能显示图标,所以同样要放在dependencies。
补充个常见误区:如果考虑让用户自行管理这些依赖版本,可以将它们同时声明在peerDependencies中(用来指定兼容的版本范围),但这并不影响把它们放在dependencies——peerDependencies是告知用户需要安装对应版本,dependencies是确保依赖能被正确加载。
内容的提问来源于stack exchange,提问作者Tsabary
相关产品推荐
相关产品推荐

