angular - 在 Typescript 项目之间共享接口
问题描述
我正在开发两个项目(一个 Angular 客户端和一个 NestJS 服务器),它们最终使用相同的接口,比如用户、产品等。
我正在寻找一种不在两个项目中复制这些接口文件的方法,而是让一个共享项目托管共享代码并由具有自己的构建设置的服务器和客户端项目引用。
你有什么提示吗?谢谢 !
解决方案
建立一个新的“通用”打字稿库存储库,其中包含所有系统范围的接口和功能。版本并将这个公共库发布到 npm 以便于访问
那么客户端和服务器项目都应该npm install mycommonlibrary
本地开发时,应npm link
同时开发和调试公用库、客户端和服务器
自以为是的建议:按照上述模式,我发现以下策略很有用:在公共库中编写您应用程序的所有“业务逻辑”,以及您的模拟和测试代码 - 这非常灵活:例如,您可以采取,通常你的服务器端业务逻辑是什么,然后在客户端运行它,连接数据库的模拟,这样你就可以像这样同构地锻炼你的大部分系统,这很漂亮
推荐阅读
- ios - 需要在 APNS 中立即使通知消息过期
- javascript - 为什么在我从我的 PC 中删除暂停后我的电子应用程序不运行?
- javascript - 无法读取反应 js 中未定义的属性“getAudioTracks”
- reactjs - 在 onClick NavLink 中使用 React Router 重定向
- jenkins - 可以对机器执行 ping 和 SSH 操作,但由于“主机密钥验证失败”错误,playbook 失败
- reactjs - 无法读取杜比交互 API 客户端 SDK 中未定义的属性“具有”
- c# - 如何在 Asp.Net 核心中将上传文件增加到无限大小
- excel - 如何在 Excel 中将日期格式从“20/May/2020T16:35”更改为“20/5/2020T16:35”
- xml - 复杂对象的 XSD 序列化
- javascript - 为什么 window.innerWidth 大于 window.screen.width