类似于 babel,create-react-app 这样的目录结构,开发起来更容易点
例如
├── CONTRIBUTING.md
├── CONTRIBUTING.zh-CN.md
├── History.md
├── LICENSE
├── README.md
├── README.zh-CN.md
├── appveyor.yml
├── lerna.json
├── package.json
├── packages
│ ├── egg
│ ├── egg-bin
│ ├── egg-core
│ └── egg-logger
├── scripts
│ ├── commits.sh
│ ├── deploy_key.enc
│ └── doc_travis.sh
├── yarn-error.log
└── yarn.lock
你指的是 egg 自己,还是你的 egg 应用?
前者的话,我们没计划合并仓库,现在这样分开挺好的。
后者的话,你自己处理就好了。lerna 只是 package 的管理而已,跟用不用 egg 关系不大,一种代码组织方式而已。
后者的话,在 lerna 3.4.0 (yarn + workspaces), 用 lerna run dev --scope application 的方式不能正常启动应用,因为yarn 将node_modules提升到了根目录下,而egg-utils寻找framework只在packages/application/node_modules下面寻找。
如果在application/package.json 里面给 egg.framework设置为相对路径,那么 egg 其他的插件无法正常找到,比如 egg-onerror。
目前只能用 npm 配合 lerna 来做。
Most helpful comment
后者的话,在 lerna 3.4.0 (yarn + workspaces), 用
lerna run dev --scope application的方式不能正常启动应用,因为yarn 将node_modules提升到了根目录下,而egg-utils寻找framework只在packages/application/node_modules下面寻找。如果在
application/package.json里面给egg.framework设置为相对路径,那么 egg 其他的插件无法正常找到,比如egg-onerror。目前只能用 npm 配合 lerna 来做。