yarn workspace 管理同一个 git 下的多个项目
目前在同一 git 下有三个个人练习的项目 koa-test、my-react-app、node-api,现想尝试用workspace 进行管理
第一步在根目录下 运行 yarn init 生成 package.json 文件(配置如下)
{ "name": "yarn-workspaces-example", "version": "1.0.0", "main": "index.js", "license": "MIT", "private": true, "workspaces": [ "packages/*" ], "scripts": { "dev:react": "yarn workspace my-react-app start", "dev:api": "yarn workspace node-api start" }, "devDependencies": { "@types/react": "^17" } }
在 scripts 中配置对象的项目启动命令,devDependencies 中加入 @types/react: ^17 是为了兼容 antd,在 @types/react 18版本中,会导致 antd 部分组件不兼容报错
第三步 将 koa-test、my-react-app、node-api 项目 拉到 packages 目录下,并重新运行 yarn 命令,运行后的目录结构
在运行后,yarn 后自动将项目里的一些 node_modules,提取到外层的 node_modules 因此当项目中有相同的依赖时,项目之间可以共用