Pau*_*aul 10 typescript angular
我有一个基于前端(角度)和后端(使用NestJS开发的-因此是NodeJS)的当前项目的monorepo。我想同时使用自定义接口和类-前端和后端。例如,创建DTO以便前端使我知道后端的参数。
我想到了一个通用文件夹,如以下项目结构所示,但这是行不通的,因为该通用文件夹不在Angular(tsconfig)的范围内,因此自动填充无法正常工作
project
??? client (Angular)
??? server (NestJS)
??? common (client and server share specific interfaces and classes)
Run Code Online (Sandbox Code Playgroud)
有人对此有经验吗?目前,我将接口添加到两个文件夹中,但这是邪恶的,因为如果更新一个接口,则也必须替换另一个接口。
在TypeScript 3.0中,引入了“项目引用”。这可以帮助您实现所需的功能(我曾使用它在角度和云函数之间共享模型)
https://www.typescriptlang.org/docs/handbook/project-references.html
您需要做的是将外部项目引用添加到该项目的外部引用,该引用tsconfig.json应从其他位置重用文件
{
"compilerOptions": {
// The usual config
},
"references": [
{ "path": "../my-other-project" }
]
}
Run Code Online (Sandbox Code Playgroud)