2016-06-14 11 views
0

Ниже мой компонент:Угловое 2 * ngFor не работает

import { Component } from 'angular2/core'; 

@Component({ 
    selector: 'test', 
    template: 
    ` 
     <ul > 
     <li *ngFor="let t of test"> 
     <span >{{t}}</span> 
     </li> 
     </ul> 
    ` 
}) 

export class TestComponent implements OnInit{ 
    test: string[]; 
    constructor(){ 
    this.test = ["Saab", "Volvo", "BMW"]; 
    } 
} 

Я получаю следующее сообщение об ошибке при попытке загрузить компонент:

EXCEPTION: Template parse errors: 
    Can't bind to 'ngFor' since it isn't a known native property ("<ul > 
     <li [ERROR ->]*ngFor="let t of test"> 
      <span >{{t}}</span> 
     </li> 
    "): 

Кроме того, я не уверен ли я следует использовать «@ angular/core» или «angular2/core» при импорте Component.

+0

'@ угловой/core' происходит от релиз-кандидата и является более поздним. Не понятно, почему вы будете видеть эту ошибку. – Katana314

+0

Какую версию Angular2 вы используете? –

+0

Думайте, что вы должны импортировать из '@ angular/core', если вы используете« 2.0.0-rc.1 » – pingo

ответ

-1

Ваш шаблон должен быть:

<ul> 
    <li *ngFor="#t of test"> 
     <span >{{t}}</span> 
    </li> 
</ul> 

Или этот путь в более новых версиях:

<ul> 
    <li *ngFor="let t of test"> 
     <span>{{t}}</span> 
    </li> 
</ul> 
+1

Использование # в ngFor больше не рекомендуется, и все его использование должно быть преобразовано в 'let' –

+0

Но это не работает для меня. – UnderWood

+0

@UnderWood, тогда у вас устаревшая версия Angular2. –

0

я испытал подобное поведение. Проблема заключалась в том, что я включил свернутую версию Angular 2 в свой HTML.

Если это так, попробуйте включить unminimized файл угловыми

1

Использование Пусть решен вопрос для меня

<ul> 
 
    <li *ngFor = "let test of testArray">{{test}}</li> 
 
</ul>

2

Проблема может возникнуть, потому что нету импортирован общий модуль к вашему текущему модулю, который вы используете.

попытка импорта

import { CommonModule } from "@angular/common"; 

в текущий модуль и посмотреть, если проблема исправлена.

общий модуль добавить все встроенные в директивах от углового 2.

see commonModule documentation по angular.io

надеждой, что помогает :)

Смежные вопросы