我也想在前端使用我用 TypeORM 创建的实体。有没有一种干净的方法可以做到这一点?或者说我应该继续这样下去。
此时,我的文件结构如下所示(前端的 Angular 8):
/server
/entity
ExampleEntity.ts
/app
/entity
Example.ts
Run Code Online (Sandbox Code Playgroud)
它们都有相同的内容,但前端缺少所有 TypeORM 构造。
在后端和前端共享相同的模型时,您可以使用一个垫片来防止未定义的装饰器出现错误。只需在您的(前端特定)中定义以下内容tsconfig.json:
{
...
"compilerOptions": {
...
"paths": {
"typeorm": ["./node_modules/typeorm/typeorm-model-shim.js"]
}
}
}
Run Code Online (Sandbox Code Playgroud)
这会覆盖模块分辨率以typeorm指向垫片。在此处查看TypeORM 存储库中的相关问题。
话虽如此,通常我会像您一样倾向于为后端和前端维护单独的模型,因为根据我的经验,无论如何,两者最终都会在某些时候出现分歧:TypeORM 实体通常包含您可能不希望溢出的实现细节当然,您的里程可能会有所不同,并且当您需要时垫片就在那里!
| 归档时间: |
|
| 查看次数: |
2337 次 |
| 最近记录: |