angular - ব্যতিক্রম: 'এনজিফোর্ড' এর সাথে আবদ্ধ হতে পারে না কারণ এটি কোনও পরিচিত দেশীয় সম্পত্তি নয়




typescript angular2-directives (8)

অপের ত্রুটির দিকে পরিচালিত আরেকটি টাইপও এতে ব্যবহার করতে পারে:

<div *ngFor="let talk in talks">

পরিবর্তে আপনার ব্যবহার করা উচিত:

<div *ngFor="let talk of talks">

আমি কি ভুল করছি?

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, [])

ত্রুটিটি হ'ল

EXCEPTION: Template parse errors:
Can't bind to 'ngFor' since it isn't a known native property
("<div [ERROR ->]*ngFor="talk of talks">

আমার ক্ষেত্রে আমি ডক্স থেকে *ng-for= অনুলিপি করার ভুল করেছিলাম।

https://angular.io/guide/user-input

আমি ভুল হলে আমাকে সংশোধন করুন। তবে মনে হয় *ng-for= কে *ngFor= পরিবর্তন করা হয়েছে


আমার ক্ষেত্রে, এই ত্রুটির ফলে * ngfor ব্যবহার করে উপাদানযুক্ত মডিউলটি অ্যাপ.মডিউল.টসগুলিতে অন্তর্ভুক্ত ছিল না। আমদানি অ্যারেটিতে এটি অন্তর্ভুক্ত করে আমার জন্য সমস্যাটি সমাধান করা হয়েছে।


আমার জন্য, একটি দীর্ঘ গল্প সংক্ষিপ্ত কাটা, আমি অজান্তে কৌনিক-বিটা -16 এ ডাউনগ্রেড করেছিলাম।

আসুন ... বাক্য গঠনটি কেবল 2.0.0-বিটা.17 + এ বৈধ

যদি আপনি এই সংস্করণটির নীচে কিছুতে বাক্য বাক্য গঠন চেষ্টা করেন। আপনি এই ত্রুটি উত্পন্ন করবে।

হয় কৌণিক-বিটা -17 এ আপগ্রেড করুন বা আইটেম সিনট্যাক্সে #item ব্যবহার করুন।


আমি " @Input " (দোহ!) দিয়ে আমার উপাদানটি @Input করতে ভুলে গেছি

book-list.componal.html ( অফারিং কোড):

<app-book-item
  *ngFor="let book of book$ | async"
  [book]="book">  <-- Can't bind to 'book' since it isn't a known property of 'app-book-item'
</app-book-item>

Book-item.componal.ts এর সংশোধিত সংস্করণ:

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

import { Book } from '../model/book';
import { BookService } from '../services/book.service';

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

  @Input()
  public book: Book;

  constructor(private bookService: BookService)  { }

  ngOnInit() {}

}

এই বিবৃতিটি Angular2 বিটা সংস্করণে ব্যবহৃত হয়েছে .....

পরবর্তীতে # এর পরিবর্তে ব্যবহার করা যাক

কীওয়ার্ড স্থানীয় ভেরিয়েবল ঘোষণার জন্য ব্যবহৃত হয়


কৌণিক 7 এ। .module.ts ফাইলে এই লাইনগুলি যুক্ত করে এটি ঠিক করা হয়েছে:

import { CommonModule } from '@angular/common'; imports: [CommonModule]


স্থানীয় ভেরিয়েবলগুলি ঘোষণার জন্য আপনার লেট-ওয়ার্ডটি ব্যবহার করা উচিত যেমন * এনজিফোর্স = "আলাপের কথা বলা যাক"








ngfor