Будучи хорошим программистом, я пытаюсь быть, я установил линтер и хаски. Когда я просматривал линтеры, я пришел к файлу app.component.ts
, и все было красным. Не понравилось, как были объявления внутри конструктора. Хорошо, нет проблем, я изменил:
constructor(
private platform: Platform,
private splashScreen: SplashScreen,
private statusBar: StatusBar,
) {
this.initializeApp();
}
до
private platform: Platform;
private splashScreen: SplashScreen;
private statusBar: StatusBar;
public constructor(
platform: Platform,
splashScreen: SplashScreen,
statusBar: StatusBar,
){
this.initializeApp();
this.platform = platform;
this.splashScreen = splashScreen;
this.statusBar = statusBar;
}
однако, после изменения я получил все типы ошибок:
ОШИБКА TypeError: Невозможно прочитать свойство 'ready' из неопределенного
это относится к:
public initializeApp(): void {
this.platform.ready().then( // <----ERROR
(): void => {
this.statusBar.styleDefault();
this.splashScreen.hide();
},
);
}
и тогда я также получу ошибку о типе и присвоении any[]
Главный вопрос, который у меня есть, почему? Почему объявление конструктора частного экземпляра в порядке, но затем объявление его частным образом за пределами конструктора, все еще передавая его через конструктор this.platform
, не найдено. Кроме того, как я могу получить те же результаты без жалоб от Линтера.