Apa yang saya lakukan salah?
import {bootstrap, Component} from 'angular2/angular2'
@Component({
selector: 'conf-talks',
template: `<div *ngFor="talk of talks">
{{talk.title}} by {{talk.speaker}}
<p>{{talk.description}}
</div>`
})
class ConfTalks {
talks = [ {title: 't1', speaker: 'Brian', description: 'talk 1'},
{title: 't2', speaker: 'Julie', description: 'talk 2'}];
}
@Component({
selector: 'my-app',
directives: [ConfTalks],
template: '<conf-talks></conf-talks>'
})
class App {}
bootstrap(App, [])
Kesalahannya adalah
EXCEPTION: Template parse errors:
Can't bind to 'ngFor' since it isn't a known native property
("<div [ERROR ->]*ngFor="talk of talks">
angular
typescript
angular2-directives
ngfor
Mark Rajcok
sumber
sumber
#
) digunakan untuk mendeklarasikan variabel templat lokalKesalahan ketik lain yang mengarah ke kesalahan OP dapat menggunakan
in
:Anda sebaiknya menggunakan
of
:sumber
Pernyataan ini digunakan dalam versi Angular2 Beta .....
Selanjutnya gunakan biarkan bukan #
biarkan kata kunci digunakan untuk mendeklarasikan variabel lokal
sumber
Dalam kasus saya, itu adalah surat kecil
f
. Saya membagikan jawaban ini hanya karena ini adalah hasil pertama di googlepastikan untuk menulis
*ngFor
sumber
Di sudut 7 diperbaiki ini dengan menambahkan baris ini ke
.module.ts
file:import { CommonModule } from '@angular/common'; imports: [CommonModule]
sumber
Anda harus menggunakan kata kunci let untuk mendeklarasikan variabel lokal mis. * NgFor = "let talk of talk"
sumber
Bagi saya, untuk mempersingkat cerita, saya secara tidak sengaja diturunkan ke angular-beta-16.
Sintaks let ... HANYA valid dalam 2.0.0-beta.17 +
Jika Anda mencoba membiarkan sintaks pada apa pun di bawah versi ini. Anda akan menghasilkan kesalahan ini.
Tingkatkan ke angular-beta-17 atau gunakan #item dalam sintaksis item.
sumber
Dalam kasus saya, saya membuat kesalahan dengan menyalin
*ng-for=
dari dokumen.https://angular.io/guide/user-input
Koreksi saya jika saya salah. Tetapi tampaknya
*ng-for=
telah diubah menjadi*ngFor=
sumber
Saya lupa membubuhi keterangan komponen saya dengan " @Input " (Doh!)
book-list.component.html (Kode yang menyinggung):
Versi buku-item.component.ts yang diperbaiki :
sumber
Juga jangan mencoba menggunakan TypeScript murni dalam ini ... Saya ingin lebih berhubungan dengan
for
penggunaan dan penggunaan*ngFor="const filter of filters"
dan mendapatkan ngFor bukan kesalahan properti yang dikenal. Hanya mengganti const dengan let berfungsi.Seperti @ alexander-abakumov berkata untuk
of
digantikan olehin
.sumber
Dalam kasus saya, modul yang berisi komponen menggunakan * ngFor mengakibatkan kesalahan ini, tidak termasuk dalam app.module.ts. Termasuk di sana di array impor menyelesaikan masalah untuk saya.
sumber
Hanya untuk menutupi satu kasus ketika saya mendapatkan error yang sama dan alasan menggunakan di bukannya dari dalam iterator
Cara yang salah
let file in files
Jalan yang benar
let file of files
sumber
Gunakan ini
Anda perlu menentukan variabel untuk beralih di atas larik objek
sumber