は、私たちが角度素材モジュールのいずれかをインポート言う:MaterialInput
インサイドサービスのようなコンポーネントを上書きしますか?
providers:[],
imports : [MaterialInput]
、名前の使用コンポーネントがあります:私は私自身の
とそのコンポーネントを上書きしたいいくつかの理由からMaterialInputComponent
は、私は言うことができるようにしたい:
providers:[
{
provide: MaterialInputComponent,
useClass : MyOwnInputComponent
}
],
imports : [MaterialInputModule]
私はサービスをオーバーライドすることができます知っているそのようなものですが、コンポーネントやディレクティブにも同様に対応できますか?
UPDATE: 私はコンポーネントの継承のために見ているわけではない、私が欲しいものはMaterial Module
のようなものを使用することですが、あなたがサービスを行うように時々私は、いくつかのそれのコンポーネントの動作をオーバーライドします。同様
:
これは私のノードモジュールにあるMaterialInput成分、後ろに元のコードである場合。
@Component({})
export class OriginalMaterialInputComonent{
greet(){ alert('Say Aloo'); }
}
そして、私が持っているような似たクラス:
@Component({})
export class OverrideMaterialInputComonent{
greet(){ alert('Say yes we can'); } // overriden function
}
そして、私は穴MaterialInputModule
declarations:[
{
provide: OriginalMaterialInputComonent,
useClass : OverrideMaterialInputComonent
}
],
imports : [MaterialInputModule]
をインポートだと言うが、それはなんとかですか?
使用している角度2のバージョンに見ることができますか?コンポーネントの継承はAngular 2.3で利用可能 –