如何构造monorepo依赖关系?

时间:2019-05-15 17:25:24

标签: typescript dependencies lerna monorepo

我们已将软件包迁移到monorepo。参见sn-client

我们不确定的是我们应该将开发依赖项放在哪里。 我在monorepos中看到,他们将常见的dev deps放到了根package.json中。

但是,如果将其放在那里,那为什么还要放入package.json包中?

我的问题是,最佳做法是什么?

1 个答案:

答案 0 :(得分:0)

我们进行了一项实践,即如果您可以从程序包中运行它,那么它应该在程序包下面。 一个例子:我们用玩笑和酶做测试,并且在monorepo的根package.json中有一个指定的配置。因此,您不能在包本身中开玩笑。打字稿也是如此。我们在根目录中有一个基本的tsconfig.json。如果没有monorepo结构,尝试在单独的程序包中运行tsc没有任何意义。因此,我们将所有那些devDependecies移到了根。