Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

建议peerdependencies加上 prop-types #297

Open
lopo12123 opened this issue Nov 18, 2023 · 2 comments
Open

建议peerdependencies加上 prop-types #297

lopo12123 opened this issue Nov 18, 2023 · 2 comments

Comments

@lopo12123
Copy link

新建一个项目单纯引入此库使用会报错无法找到 prop-types,排查发现是 create-react-context 使用并列为了 peerDependencies。

一个库最好将所有子依赖项的 peer 都列举出来避免这个问题

image

@CJY0208
Copy link
Owner

CJY0208 commented Dec 12, 2023

这似乎是新一代包管理器的约定,我对此还不了解,有什么资料可以说明这个约定的含义嘛

@lopo12123
Copy link
Author

lopo12123 commented Dec 12, 2023

关于 peerdependencies 的字段解释 https://nodejs.org/en/blog/npm/peer-dependencies

类似 掘金知乎也有比较多的解释,可以搜搜看一下大家的理解。

我个人的使用习惯就是,如果我这个包的用户一般来说一定会装这个库,那么我就将这个依赖项列为peer而不是直接的dependence。 比如开发组件库的时候可以将 react 和 react-dom 列为peer,因为用户一定会去装,而不必要在我的组件库里打包一份react相关的代码,直接用外部的就可以。


提出此issue的原因是,我直接引入了此库,直接使用会出现缺少 prop-types 库的提示,在peerdependencies 里面罗列一下对用户更友好,包管理工具也可以有更好的提醒信息(比如提示用户有某依赖项作为 peer 但是当前的所有package.json 里的包都不包含这个依赖)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants