У меня есть компонент spinner, который используется для отображения счетчика, когда HTTP-запрос занимает немного больше времени.Как добавить шаблон с прядильщиком в компоненте Angular 2
@Component({
selector: 'my-spinner',
template: require('./spinner.component.html'),
styles: [require('./spinner.component.css').toString()]
})
Теперь я хочу использовать этот спиннера компонент в другой компонент (скажем «FooterComponent»), который требует, чтобы пройти ниже параметра,
[isRunning]="isRequesting"
я могу передать это как часть шаблона, но Я также должен поддерживать шаблон для компонента «FooterComponent».
Вопрос, как я могу поддержать оба?
import { Component, OnInit } from '@angular/core';
import { DataService } from '../../services/DataService';
import { SpinnerComponent } from '../spinner/spinner.component';
@Component({
selector: 'starterTemplateFooter',
template: require('./footer.component.html'),
//how to add below template along with above template?
//template: '<my-spinner [isRunning]="isRequesting"></my-spinner>'
})
export class FooterComponent {
public isRequesting: boolean;
public values: any[];
constructor(
private _dataService: DataService) {
this.refresh();
}
public refresh(): void {
this.isRequesting = true;
this._dataService.GetAll()
.subscribe(
result => this.values = result,
() => this.stopRefreshing(),
() => this.stopRefreshing());
}
private stopRefreshing() {
this.isRequesting = false;
}
}
Аргумент типа '{селектор: string; директивы: typeof SpinnerComponent []; шаблон: любой; } 'не присваивается параметру типа. Литерал объекта компонента может указывать только известные свойства, а «директивы» не существуют в типе «Компонент». –
Я получаю выше ошибки, добавляя «директивы: [SpinnerComponent]» –
вместо «директив» попробуйте «entryComponents». Я имею в виду изменить слово. Также, какую версию Angular2 вы используете? – Ajey