【问题标题】:Angular 2: Access object dataAngular 2:访问对象数据
【发布时间】:2016-06-29 07:49:58
【问题描述】:

在我的 Angular RC2 应用程序中,我进行了一个可观察的 HTTP 调用,该调用从 API 返回以下 JSON:

{
    "success":true,
    "data":
    {
        "Type": 1
        "Details":{
            "Id":"123",
            "Name":"test",
            "Description":"test"
        }
    }
}

我像这样映射数据:

this._myService.get(id)
    .subscribe(
        (data) => {
            this.details = data.Details;
            this.type = data.Type;
        },
        (error) => {
            this.setError(error);
        }
     );

如何从这里访问“详细信息”对象中的值?

我试过了:

{{details.Name}}

但这不起作用,我也不能使用 ngFor 循环它。

【问题讨论】:

    标签: json object angular


    【解决方案1】:

    您可以为此使用 Elvis 运算符:

    {{details?.Name}}
    

    事实上,您是异步加载数据的,所以 details 在开始时是未定义的。

    【讨论】:

    • 您也可以使用*ngIf="details"*ngIf="details.Name"(这样您就可以为*ngIf="!details" 显示类似“正在加载”的内容)
    • @bene 同意!这取决于用例;-)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-03-31
    • 1970-01-01
    • 1970-01-01
    • 2021-01-06
    • 2018-08-30
    • 1970-01-01
    相关资源
    最近更新 更多