当使用yarn工作区时,是否可以使用嵌套的package.json文件来解析包的子集的依赖关系?避免重复?
其中cra是create-react-apps,pkg是这些站点使用的包。例如:
| /
| - package.json
|---- /sites
|-------- /cra-1
| - package.json
|-------- /cra-2
| - package.json
|---- /packages
| - package.json // <<---- Extra level here
|-------- /pkg-1
| - package.json
|-------- /pkg-1
| - package.json
|-------- /pkg-2
| - package.json这将允许我们共享包的共同依赖关系……使它们保持同步并保持最新
发布于 2019-10-28 18:31:14
这也可以与bash脚本一起使用,但请尝试以下脚本:
var fs = require('fs')
var join = require('path').join
var os = require('os')
var cp = require('child_process')
var resolve = require('path').resolve
// library path
var lib = resolve(__dirname, '../lib/')
fs.readdirSync(lib)
.forEach(function (mod) {
var modPath = join(lib, mod)
// ensure path has package.json
if (!fs.existsSync(join(modPath, 'package.json'))) return
// npm binary based on OS
var npmCmd = os.platform().startsWith('win') ? 'npm.cmd' : 'npm'
// install folder
cp.spawn(npmCmd, ['i'], { env: process.env, cwd: modPath, stdio: 'inherit' })
})您可以通过根目录中的npm和主package.json运行脚本。该脚本将访问每个子目录并执行npm安装。
https://stackoverflow.com/questions/58446488
复制相似问题