簡體   English   中英

無法使用角度插值顯示JSON數據

[英]Unable to display JSON data with Angular interpolation

在我的Angular應用中,我試圖顯示以下JSON中的數據:

conversations: [
{
  'conversationdId': 1,
  'conversationTitle': 'My first convo',
  messages: [
    {
      'messageId': 1,
      'messageText': 'Hi'
    },
    {
      'messageId': 2
      'messageText': 'Hello'
    }
  ]
},
{
  'conversationdId': 2,
  'conversationTitle': 'My second convo',
  messages: [
    {
      'messageId': 1,
      'messageText': 'asdfasdfasdf'
    },
    {
      'messageId': 2
      'messageText': 'qwerqwerqwer'
    }
  ]
}
];

我嘗試了以下HTML:

<h2>
  {{conversations[0].messages[0].messageId}}
</h2>

但我在控制台中收到此錯誤:

TypeError:_co.conversations未定義堆棧跟蹤:View_ConversationsComponent_0 / <@ng:///AppModule/ConversationsComponent.ngfactory.js:11:9

我在這里做什么不正確?

首次運行的應用程序,此變量為null或undefiend:conversations [0] .messages [0] .messageId

請為該div聲明或設置* ngIf

像這樣

<h2 *ngIf="conversations[0].messages[0].messageId">
  {{conversations[0].messages[0].messageId}}
</h2>

在這里你錯過了'messageId': 1之后的逗號'messageId': 1你還需要在ngOnInit方法中初始化數據,這樣你就不會得到這個錯誤。

component.ts

import { Component, OnInit } from '@angular/core';

@Component({
  selector: 'my-app',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.css']
})
export class AppComponent implements OnInit {
  name = 'Angular';

  conversations;
  ngOnInit() {
    this.conversations = [
      {
        'conversationdId': 1,
        'conversationTitle': 'My first convo',
        messages: [
          {
            'messageId': 1,
            'messageText': 'Hi'
          },
          {
            'messageId': 2,
            'messageText': 'Hello'
          }
        ]
      },
      {
        'conversationdId': 2,
        'conversationTitle': 'My second convo',
        messages: [
          {
            'messageId': 1,
            'messageText': 'asdfasdfasdf'
          },
          {
            'messageId': 2,
             'messageText': 'qwerqwerqwer'
          }
        ]
      }
    ];
  }
}

component.html

 <h2>
  {{conversations[0].messages[0].messageId}}
</h2>

這是Stackblitz的演示

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM