yarnpkg - 删除工作区后更新 yarn.lock
问题描述
假设我有一个使用标准工作区结构的 monorepo:
monorepo
|- package.json
|- yarn.lock
|- packages
|- package_a
|- package_b
我想完全摆脱,package_a
同时也相应地更新 yarn.lock。
以下内容不会更新锁定文件:
$ rm -rf packages/package_a
$ yarn install
在 monorepo 的根目录中运行它也不起作用:
$ yarn remove -W package_a
error This module isn't specified in a package.json file.
这确实有效,但会影响范围允许的所有包装,这是不需要的。
$ rm -rf packages/package_a
$ yarn upgrade
我怎样才能做到这一点?
解决方案
我可能误解了你的问题......但似乎你需要package
在你package.json
提到的每一个中包含每一个workspace
:https ://classic.yarnpkg.com/en/docs/workspaces/ 。
需要package.json
:
{
"private": true,
"packages": ["package_a", "package_b"]
}
我猜这就是为什么您 error This module isn't specified in a package.json file.
在尝试时遇到错误的原因yarn remove -W package_a
。当它包含在package.json
then just yarn remove package_a
this 也会yarn.lock
自动更新你的。
推荐阅读
- python - 软件包升级后 Jupyter Notebook 不工作
- rest - REST API 获取特定文档
- codeigniter - 以别名和编号为列的 Codeigniter 查询
- django - Django 模型表单未保存到数据库
- html - 网络字体不在 Gmail 应用程序上呈现,但在 Gmail 网络应用程序上呈现
- django - 如何从 ModelForm 中保存数据?
- c# - 我不明白代码的 Try Catch Exception 部分
- android - 使用新的 prefixText 时如何更改 TextInputLayout 的提示填充?
- java - Akka Http 请求和响应模式
- typescript - 如何使用 TypeORM 在 React-Native 中处理 SQLite 迁移?