首页 > 解决方案 > 如何使用快照处理嵌套数组/返回多个数组

问题描述

我有以下代码作为market.mode.ts

export class Market{
    srdCat: any; 
}

以及以下作为 Angular 应用程序中的服务。

private srds: Market[] = [{
    srdCat: [{
        tier: "one",
        details: [{
            srdName: "1",
            srdLink: "Tier 1 Value 1"
        },
        {
            srdName: "2",
            srdLink: "Tier 1 Value 2"
        }]
    }, {
        tier: "two",
        details: [{
            srdName: "3",
            srdLink: "Tier 2 Value 1"
        },
        {
            srdName: "4",
            srdLink: "Tier 2 Value 2"
        }]
    }]
}]

我正在尝试从 URL 捕获层以显示阵列详细信息。就像,如果我在 URL 中传递 /one,我需要详细的所有项目:[] 数组

在我的 Oninit() 我有以下代码

const srdCat = this._route.snapshot.params['srdCat.tier'];
this.srds = this._test.getSRD(srdCat.tier);
console.log(this.srds);

我在 this.srds 收到以下错误

“市场”类型缺少“市场 []”类型中的以下属性:长度、弹出、推送、连接和 26 个以上。ts(2740)

有人可以帮助我获取数组的代码吗?是否可以使用 Snapshot 或者我只需要尝试使用 Observable。

标签: angularobservable

解决方案


推荐阅读