javascript - 如何分别发布/安装开发和生产环境的 npm 包
问题描述
一个组织有一个私有npm
包,该组织的一些应用程序使用该包。在对该包进行更改后,它首先需要仅在开发环境中发布,以便在开发环境中运行的应用程序安装它。对所有应用程序完成测试后,应发布此包,以便生产环境应用程序可以安装它。
就像,组织的所有应用程序都在两个完全相互隔离的独立环境中运行,有没有办法让我们也可以以同样的方式发布/安装私有 npm 包?
由于我们无法package.json
通过任何环境变量更改文件的依赖名称或依赖版本,因此yarn install
无论环境如何,都将始终安装依赖。
我检查了 npm 的prerelease-tags。据此,我们可以在开发环境中为包提供一个预发布版本。但在这种情况下,我们必须确保在package.json
从 dev 推送到 prod 环境时更改版本。
其他解决方案可能是package.json
为 dev 和 prod 保留单独的文件,并根据它们运行的环境使用其中一个来安装包。
还有其他更好的方法可以做到这一点吗?
解决方案
推荐阅读
- elasticsearch - Elasticsearch 必须在列表对象上
- python - Python 3 中的 ModuleNotFoundError 但不是 2
- terraform - Terraform 模块内的执行顺序
- javascript - IE 11 从选择中删除选项
- redux - 用户变量值作为类型
- php - 更新文件时出错
- nuget - NuGet CLI 不为包引用还原包
- resteasy - 从泽西岛迁移到 RestEasy
- intellij-idea - 在 IntelliJ Idea 上运行 RinSim 示例时启动层初始化错误
- python-3.x - 气流:等待接收电子邮件并处理附件中包含的数据