首页 > 解决方案 > Angular 从 Observable 获取项目>

问题描述

我在角度组件中添加了一些服务器端过滤。

我在页面中返回结果: Observable< Page< Job>>

显示和过滤工作完美,但我需要另一种方法从列表中删除项目,并且无法弄清楚如何从组件中访问项目。

在实施过滤之前,我在 Array 中有作业,并正在使用以下方法删除作业。虽然取消保存作业仍然有效,但如何从列表页面访问单个作业: Observable< Page< Job>>

public unSaveJob(id: string) {
    this.jobService.unSaveJob(id);
    var jobToRemove = this.jobs.find(j => j.Id == id);
    this.savedJobs = this.jobs.filter(j => j !== jobToRemove);
}

export class Page<T> {
count: number;
next: string;
previous: string;
results: Array<T>;
}

如果有人能指出我正确的方向,我将不胜感激。

标签: angulartypescriptangular7

解决方案


发布此内容时,大脑无法正常工作。所以如果其他人已经跌倒了

只需订阅构造函数中的 page.results

this.page.subscribe(data => this.jobs = data.results);

并显示作业而不是 component.html 中的页面


推荐阅读