来自猫鼬模式的角度接口

Posted

技术标签:

【中文标题】来自猫鼬模式的角度接口【英文标题】:Angular interface from mongoose schema 【发布时间】:2020-08-01 05:48:46 【问题描述】:

请帮助弄清楚如何从 db 模型制作正确的 Angular 接口

在后端有以下架构:

const mongoose = require('mongoose')
const Schema = mongoose.Schema

const incomeSchema = new Schema(   
    income: 
        type: Number
    ,
    incomeDate: 
        type: Date,
        default: Date.now
    
)


const userSchema = new Schema(
    username :
        type: String,        
    ,
    website: 
        sitename: 
            type :String
        ,        
        income: [incomeSchema]
        
)
module.exports = mongoose.model('User', userSchema)

这是编写 Angular 接口的正确方法吗?不能让它工作:(

export class userInterface  
    _id: String
    username: String
    website: 
        sitename: String,
        income: [
            
                income : Number
            
        ]
    


【问题讨论】:

【参考方案1】:

类不适合声明表示 HTTP 响应的类型,因为 HTTP 请求产生的反序列化 JSON 值永远不会是类的实例。接口是它的完美候选者。

解决方案

interface IncomeData
income:number;
incomeDate:Date;


interface Website
sitename: string;
incomeData:Array<IncomData>;


export interface User
    id: string;
    username: string;
    website:Website;

How to design a Typescript Model for Response Returned By HttpClient library in Angular.

【讨论】:

以上是关于来自猫鼬模式的角度接口的主要内容,如果未能解决你的问题,请参考以下文章

在角度视图中注入猫鼬模型验证

从设计模式的角度理解Zookeeper中的Watcher

角度日期在 $format 上四舍五入

如何从角度组件使用我的节点端点插入数据?

如何确定角度应用的合适设计模式

打印性能优化[缓冲模式角度]