Тип «Observable <{} []>» нельзя назначить типу «BrandElement []».Свойство «include» отсутствует в типе «Observable <{} []>» - PullRequest
0 голосов
/ 02 июня 2018

Я использую Firebase для базы данных.пытаясь получить данные и отобразить их в угловой таблице 6.

Это интерфейс и класс компонентов.

export interface BrandElement {
  name: string;
  image: string;
}    

export class BrandComponent implements OnInit {

  displayedColumns = ['name'];
  //dataSource = new MatTableDataSource(ELEMENT_DATA);
  dataSource = new MatTableDataSource<BrandElement>();


    constructor(private _router: Router, private _af: AngularFireDatabase) { 
       this.dataSource.data = this._af.list('/all-brands').valueChanges();
   }
}

Строка в конструкторе, выдающая ошибку

[ts]
Type 'Observable<{}[]>' is not assignable to type 'BrandElement[]'.
Property 'includes' is missing in type 'Observable<{}[]>'.

Как решить эту проблему?

1 Ответ

0 голосов
/ 02 июня 2018

Вы можете решить это двумя способами, использовать

 brandList: Observable<any[]>;

, а затем,

this.brandList=  this._af.list('/all-brands').valueChanges();

this.brandList.subscribe( (value) => {
  this.dataSource = new MatTableDataSource(value);
});

или разыграть свой

 this.dataSource.data = this._af.list<BrandElement>('/all-brands').valueChanges();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...