![](/img/trans.png)
[英]npm package from private github repo, install vs update (package.json)
[英]NX package-based repo: projectRoot vs workspaceRoot?
如果我有一个带有 NX 的基于包的 monorepo,哪个目录是projectRoot
,哪个是workspaceRoot
?
从文档( https://nx.dev/reference/project-configuration ):
{projectRoot} 和 {workspaceRoot}
{projectRoot} 是一个关键字,由当前项目根目录的路径替换。 {workspaceRoot} 是一个关键字,由工作区根目录的路径替换。
这是非常明显和无益的解释。 我想知道哪个是哪个,因为我有这个目录结构:
(git repo root dir)
|
+- nx.json
+- package.json - it says `"workspaces": [ "packages/*" ]`
|
+- packages/
|
+- package1/
+- package2/
因为package.json
提到我的packages/*
作为“工作区”,我的猜测是每个 package 都是一个工作区,因此workspaceRoot
必须分别引用每个 package,而projectRoot
必须引用我的nx.json
配置的顶级目录。 但我完全不知道如何确认这一点。 我正在试验缓存(设置各种inputs
,看它是命中还是未命中),但绝对没有任何效果。
澄清一下我的困惑:“工作空间根目录”是包含所有工作空间(即包)的目录,还是表示“单个工作空间(即包)的根目录”。 (这里我假设“workspace”==“package”,这可能不是真的。)
基于阅读https://nx.dev/concepts/mental-model ,这里是我的定义:
packages/
中的每个单独的子目录packages/package1
和packages/package2
nx.json
所在的根目录简而言之:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.