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