2017-04-07 123 views
0

我有一個類與來自另一文件導入陣列,所述陣列的正確improted但在模板顯示陣列2

數組定義

let list = [ 
    {nombre :"primero"}, 
    {nombre :"segundo"}, 
    {nombre :"tercero"} 
]; 

export {list}; 

類未示出

import { Component, OnInit } from '@angular/core'; 
import { Clock } from '../classes/clock'; 
import { ClockFactory } from '../classes/clockFactory'; 
import { list } from '../data/data'; 

@Component({ 
    selector: 'app-crono', 
    templateUrl: './crono.component.html', 
    styleUrls: ['./crono.component.css'] 
}) 
export class CronoComponent implements OnInit { 


    public lapses:Array<Clock>=[]; 
    private factory:ClockFactory; 
    private persona ={ nombre:'Nombre'}; 
    private lista = list; 

    constructor(factory:ClockFactory) { 
    console.log('constructor Crono'); 
    console.log(this.lista); 
    this.factory = factory; 
    } 

    ngOnInit() { 
    } 

} 

和模板

<div> 
    <p *ngFor="let element of list">{{element.nombre}}</p> 
</div> 

此代碼可能沒有什麼意義,但其僅用於測試目的,我正在學習angular2

+1

列表與屬性命名列表中的對象,WH ich是一個數組。它不是一個數組(因爲你的console.log應該顯示,並且你應該在控制檯中得到的錯誤解釋了這個錯誤),而且你的屬性被命名爲lista,而不是列表,它應該是公開的,而不是私有的。 –

回答

0

要導出列表,它實際上是一個對象不是一個數組與這一個

export const list = [ 
    {nombre :"primero"}, 
    {nombre :"segundo"}, 
    {nombre :"tercero"} 
]; 
取代你的列表導出

,並在你的組件,你已經創建list財產,但uterating超過list命名列表屬性list

private list = list;