这是因为尚未创建MultiWindowConfig对象。你需要有
多窗口配置
在你的
提供者
如果是的话
@可注射的
.
如果没有,可以使用工厂模型创建对象(
https://angular.io/guide/dependency-injection-providers
). 首先为类创建工厂和提供程序:
const MyMultiwindowServiceFactory = (location: Location, storageService: StorageService, windowRef: WindowRef, router: Router, authService: AuthService) => {
const config: new MyMultiWindowConfig();
return new MyMultiwindowService(location, storageService, windowRef, router, authService, config)
}
export let MyMultiwindowServiceProvider = {
provide: MyMultiwindowService,
useFactory: MyMultiwindowServiceFactory,
deps: [Location, StorageService, WindowRef, Router, AuthService]
}
然后在你的
应用模块.ts
您将导入提供商并提供它:
import {MyMultiwindowServiceProvider } from './services/my-multi-window.service.ts'
@NgModule({
.....other code
providers: [MyMultiwindowServiceProvider, ....other services],
bootstrap: [AppComponent]
})
现在每当你提到
我的多窗口服务
提供程序将使用您在工厂中设置的配置提供服务的实例。