Workspaces 는 패키지 아키텍처를 설정하는 새로운 방법으로, Yarn 1.0 부터 기본적으로 사용할 수 있습니다. 이 기능을 사용하면 여러 패키지를 한 번에 설치하기 위해 yarn install 을 한 번만 실행하면 되는 방식으로 여러 패키지를 설정할 수 있습니다.
yarn link 보다 더 나은 메커니즘입니다.Yarn 이 더 잘 최적화할 수 있는 더 많은 자유도를 제공합니다.Yarn 은 각 프로젝트마다 다른 것이 아니라 단일 lockfile 을 사용하므로 충돌이 적고 검토가 더 쉬워집니다.package.json 파일에 다음을 추가합니다. 이제부터는 이 디렉터리를 “workspace root” 라고 부르겠습니다:
{
"private": true,
"workspaces": ["workspace-a", "workspace-b"]
}
private: true 는 필수입니다! 워크스페이스는 공개할 수 있는 공간이 아니므로 실수로 노출되지 않도록 이 안전 조치를 추가했습니다.
이 파일을 만든 후 workspace-a 와 workspace-b 라는 이름의 두 개의 하위 폴더를 새로 만듭니다. 각각의 하위 폴더에 다음 내용을 포함하는 또 다른 package.json 파일을 만듭니다:
workspace-a/package.json:
{
"name": "workspace-a",
"version": "1.0.0",
"dependencies": {
"cross-env": "5.0.5"
}
}
workspace-b/package.json:
{
"name": "workspace-b",
"version": "1.0.0",
"dependencies": {
"cross-env": "5.0.5",
"workspace-a": "1.0.0"
}
}
마지막으로, “workspace root” 안쪽 어딘가에서 yarn install 를 실행합니다. 모든 것이 잘 작동하면 이제 비슷한 파일 계층 구조가 생겼을 것입니다: