2016-01-30 49 views
5

以下* ngFor* ngFor顯示元素空數組

<ul> 
    <li *ngFor="#todo of todoService.todos"> 
    {{todo}} 
    <li> 
</ul> 

凡todoService是注入接口

import {Injectable} from 'angular2/core'; 

@Injectable() 
export class TodoService { 
    todos = [] 
} 

當我加載頁面時,輸出爲<li></li>,而不是什麼都沒有。

任何想法爲什麼?由於數組是空的,不應該有一個<li> -tag

編輯 它也存在的,當我初始化值的數組。總是有一個尾隨沒有理由的空元素。問題 https://plnkr.co/edit/MRYC4MHtlDLfBMUPsL6o?p=preview

回答

12

是啊:)你可以盯着這類問題盲目,即使該解決方案是有時太簡單了。

我相信你想底部<li>是一個結束標籤?這可能只是解決您的問題:

<ul> 
    <li *ngFor="#todo of todoService.todos"> 
    {{todo}} 
    </li> <!-- this nagger right here --> 
</ul> 
0

EDIT2 的例子我能不β1的重現您的問題:

@Component({ 
    selector: 'my-app', 
    template: ` 
    <div> 
     Test: 
     <ul> 
     <li *ngFor="#l of service.list">{{l}}</li> 
     </ul> 
    </div> 
    ` 
}) 
export class AppComponent { 
    constructor(private service:Service) { 

    } 
} 

看到這個plunkr:https://plnkr.co/edit/hGpCIZQghtMBbpplV9tV?p=preview

您使用了哪個版本的Angular2?

蒂埃裏

+0

實際上,我也困惑,因爲我下面的教程(不快速啓動),但我用從谷歌的快速入門樣板與「angular2」:「2.0.0- beta.0「,你的樣品證明我錯了..我試圖找到原因 – Michael

+0

在這裏的問題:https://plnkr.co/edit/MRYC4MHtlDLfBMUPsL6o?p=preview – Michael