我创建了一个服务 SocketService,基本上它初始化套接字让应用程序监听端口。该服务还与一些组件进行交互。
//socket.service.ts
export class SocketService {
constructor() {
// Initializes the socket
}
...
}
我知道 SocketService 的构造函数()中的代码只有在组件使用 SocketService 时才开始运行。
通常 app.ts 中的代码是这样的:
//应用程式
import {SocketService} from './socket.service';
...
class App {
constructor () {}
}
bootstrap(App, [SocketService]);
但是,我希望这个服务在应用程序启动时运行。因此,我做了一个技巧,只需在 App 的构造函数()中添加 private _socketService: SocketService
。现在代码是这样的:
//app.ts (新增)
import {SocketService} from './socket.service';
...
class App {
constructor (private _socketService: SocketService) {}
}
bootstrap(App, [SocketService]);
现在成功了。问题在于 SocketService 的构造函数()中的代码有时运行,有时则不运行。那么我应该怎么做才正确呢?谢谢