1
私は多くのルートとモジュールを読み込む角最終アプリを持っています。私はコンソールに "Zone is already loaded"というエラーが出るようになったので、今度はそれを2回取得しています。既にロードされているゾーンを確認するにはどうすればよいですか?
私はゾーンオブジェクトを調べて、何が起こっているのか把握しようとしていますが、これは、ゾーンが何をすべきかを知らずに解読することはほとんど不可能です。私は仮定する
@NgModule({
imports: [ BrowserModule, RouterModule.forRoot(appRoutes), SharedModule.forRoot(),
HomeModule, DocumentsModule, AboutModule, SettingsModule, FoodModule, CalculatorModule,
ThemesModule ],
declarations: [ AppComponent ],
bootstrap: [ AppComponent ],
providers: [ appRoutingProviders ]
})
export class AppModule {}
app.component.ts
@Component({
moduleId: module.id,
selector: 'kg-root',
templateUrl: 'app.component.html',
styleUrls: ['app.component.css']
})
export class AppComponent implements OnInit {
private items: MenuItem[];
appPageHeaderDivStyle: {};
selectedTheme: Theme;
errorMessage: string;
loggedIn: LoggedIn;
loggedInEmail: string = "";
isLoggedIn: boolean;
constructor(
private as: AppMenuService,
private ts: ThemeService,
private ss: SettingsService,
private ls: LoginService) {
}
ngOnInit() {
this.ts.getNewTheme()
.subscribe(
theme => this.selectedTheme = theme,
error => {
this.errorMessage = error
},
() => this.completeGetNewTheme()
);
this.ts.setTheme("Pepper-Grinder");
this.items = this.as.getNoLoginMenu();
this.ls.getLoggedIn()
.subscribe(
loggedIn => {
if (loggedIn.error != undefined && loggedIn.error === "" && loggedIn.email != "") {
this.items = this.as.getLoggedInMenu();
var us = this.ss.getUserSettings();
if (us != undefined && us.theme != null && us.theme != "") {
this.ts.setTheme(us.theme);
}
}
else {
this.items = this.as.getNoLoginMenu();
this.ts.setTheme("Pepper-Grinder");
}
this.completeLoggedIn(loggedIn.email);
});
}
completeLoggedIn(email: string) {
this.loggedInEmail = email;
this.isLoggedIn = (this.loggedInEmail.length > 0);
}
completeGetNewTheme() {
this.appPageHeaderDivStyle = this.ts.getAppPageHeaderDivStyle();
}
私は同じ問題を抱えていますが、私はzone.jsをリロードすることを知っています。私はロードしなければならないかどうかチェックする –