我有一个用ts节点编写的各种工具/脚本的存储库,并在许多项目中使用。
最初,它包含几个自动化/分析脚本、一个根目录下的package.json文件和一个作为入口点的index.ts文件。
我只是取消了对我需要的函数的一个调用,然后输入npm start。在VS代码中调试也非常容易,为index.ts设置了一个配置。
但是随着时间的推移,代码库已经增长,已经有40个脚本/工具使用不同的API和其他,旧的方法越来越糟糕。
问题:
我想要的:
npm start一样简单我开始研究lerna,nx,npm工作空间,涡轮回购,lage,所有这些似乎都解决了点1-3,而不是点4-6。
我如何组织这个单一的,以实现我上面概述的目标?
发布于 2023-03-17 14:03:26
使用monorepo来管理TypeScript (TS)节点脚本可以提供几个好处,包括:
代码共享: monorepo允许您在多个项目之间共享公共代码和库。这可以帮助减少代码重复,并使维护和更新共享代码变得更容易。
一致性:通过允许您在所有项目中强制执行共同的标准和实践,monorepo可以帮助确保代码库中的一致性。
更好的协作:通过将所有项目放在一个地方,团队成员可以更容易地在代码上进行协作并在不同的项目之间进行更改。
要使用monorepo来管理TS节点脚本,可以使用Yarn工作区或Lerna这样的工具来管理包和依赖项。这些工具为管理依赖关系和构建项目提供了一种方便的方法。
下面是设置用于管理TS Node脚本的monorepo的一些步骤:
为您的monorepo创建一个新文件夹,并通过运行npm或纱线init初始化一个新的npm包。
添加一个包文件夹,您可以在其中存储所有TS节点脚本。每个脚本都应该在包文件夹下的自己的文件夹中。
在每个脚本文件夹中,使用适当的依赖项和脚本创建一个package.json文件。
在根package.json文件中,添加workspaces属性并指定到packages文件夹的路径。
通过运行npm安装-保存-开发纱或npm安装
在根package.json文件中设置脚本和依赖项,或者创建一个单独的脚本文件夹来管理它们。
运行纱线安装或lerna引导以安装所有依赖项并将包链接到一起。
现在可以使用根package.json文件或脚本文件夹中定义的脚本运行TS Node脚本。
https://softwareengineering.stackexchange.com/questions/444496
复制相似问题