Я создал службу SocketService, в основном она инициализирует сокет, чтобы приложение могло прослушивать порт. Этот сервис также взаимодействует с некоторыми компонентами.
// socket.service.ts
export class SocketService {
constructor() {
// Initializes the socket
}
...
}
Я знаю, что код в SocketService constructor () запускается только тогда, когда компонент использует SocketService.
И обычно код в app.ts выглядит так:
// app.ts
import {SocketService} from './socket.service';
...
class App {
constructor () {}
}
bootstrap(App, [SocketService]);
Однако я хочу, чтобы эта служба запускалась при запуске приложения. Итак, я сделал хитрость, просто добавил private _socketService: SocketService
конструктор приложения (). Итак, теперь коды выглядят так:
// app.ts (новое)
import {SocketService} from './socket.service';
...
class App {
constructor (private _socketService: SocketService) {}
}
bootstrap(App, [SocketService]);
Теперь это работает. Проблема в том, что иногда коды в SocketService constructor () выполняются, а иногда нет. Так как мне это сделать правильно? Благодарность