首页 > 解决方案 > 我应该如何在 Angular 中连接这些对象?

问题描述

我在 Angular6 项目中有一个 Book 类:

export class Book {
    id: number;
    title: string;
    author: string;
}

我有一个图书馆组件,其中列出了我所有的书籍对象,以及一个书籍详细信息组件,其中列出了每本书的详细信息。我正在尝试创建一个作者作品组件,该组件将通过在库组件中选择作者超链接来列出特定作者的所有书籍。

回到我的问题。我应该创建一个新类吗,作者:

export class Author {
    id: number;
    name: string;
}

将其 ID 作为外键注入到我的 Book 对象中(因此我可以使用此 ID 列出与特定作者对应的所有书籍),就像我在 SQL 之类的东西中一样?我是 Angular 的新手,不确定什么是常见/最佳实践。

所以它最终会是这样的:

export class Book {
    id: number;
    authorId: number;
    title: string;
}

标签: angular

解决方案


是的,我会在类中添加一个authorId属性Book,然后对于书籍数组,您可以通过执行以下操作按所选作者进行过滤:

this.books.filter(book => book.authorId === this.selectedAuthorId);

推荐阅读