2
アンギュラバージョン2.2.0
以下では、私はラインでのエラーの下に取得しています、プロパティ 'し、' タイプに存在しません 'ComponentFactory <SpinnerComponent>'
Plunkerリンク、
http://plnkr.co/edit/f6GBBQan7z4I9K1qBZOi?p=preview
spinnerRef.then((factory: ComponentFactory<any>) => {
エラー 'プロパティ'は 'ComponentFactory'タイプに存在しません。
これと解決の理由は何か、提案してください。ありがとう!
import { Injectable, ApplicationRef, ViewContainerRef, Component, ComponentRef, ComponentFactoryResolver, ComponentFactory, ViewChild } from '@angular/core';
import { SpinnerComponent } from '../components/blockui/blockui.component';
@Injectable()
export class SpinnerService {
spinnerComp: ComponentRef<any>;
constructor(private _appRef: ApplicationRef, private _resolver: ComponentFactoryResolver) {
}
public start() {
let elementRef: ViewContainerRef = (<any>this._appRef)['_rootComponents'][0].location;
return this.startInside(elementRef, null);
}
public startInside(elementRef: ViewContainerRef, anchorName: string) {
let spinnerRef = this._resolver.resolveComponentFactory(SpinnerComponent);
spinnerRef.then((factory: ComponentFactory<any>) => {
this.spinnerComp = elementRef.createComponent(factory)
});
}
public stop() {
if (this.spinnerComp) {
this.spinnerComp.destroy();
}
}
}
あなたはおそらく@NgModule 'に' SpinnerComponent'を追加しませんでした –
おかげで、今でエラーが削除されていないが、私が実行しているとき、私はエラーを取得M、「SpinnerComponentが見つかりませ部品工場」 ({entryComponents:[SpinnerComponent]、...}) 'これは、動的に追加されるすべてのコンポーネントに必要です。 –
私は@宣言の下に、私がentryComponentsの下に置こうとすると、 "SpinnerComponentコンポーネントがNgModuleの一部ではないか、またはモジュールがモジュールにインポートされていないというエラーがスローされます; Zone:; Task:" –