Say importujemy jeden kątowego modułów Materiał:Zastąpić komponenty, takie jak usługi?
providers:[],
imports : [MaterialInput]
Wewnątrz MaterialInput
, jest składnikiem stosowanym nazwie: MaterialInputComponent
Z jakichś powodów chcę, aby zastąpić ten składnik z własną
So Chcę móc powiedzieć:
providers:[
{
provide: MaterialInputComponent,
useClass : MyOwnInputComponent
}
],
imports : [MaterialInputModule]
Wiem, że możemy przesłonić serwis Tak, ale czy można to zrobić również dla komponentów lub dyrektyw?
UPDATE: ja nie szukam dziedziczenia komponentów, co chcę jest użycie coś jak Material Module
ale czasami chcę zastąpić niektórych to komponenty zachowań, jak zrobić z usług.
odczuwalna:
Jeśli jest to oryginalny kod za składnik MaterialInput, co jest w moim modułu węzła.
@Component({})
export class OriginalMaterialInputComonent{
greet(){ alert('Say Aloo'); }
}
i mam podobna klasa jak:
@Component({})
export class OverrideMaterialInputComonent{
greet(){ alert('Say yes we can'); } // overriden function
}
I powiedzieć mi importowania MaterialInputModule dołkowe
declarations:[
{
provide: OriginalMaterialInputComonent,
useClass : OverrideMaterialInputComonent
}
],
imports : [MaterialInputModule]
Czy to jest wykonalne?
Która wersja kątowa 2 używasz? Dziedziczenie komponentów jest dostępne w Angular 2.3 –