Я занимаюсь разработкой своего первого ионного приложения.Я закончил его, и он отлично работает, когда я делаю
ionic serve --open
или когда я открываю его на Ionic DevApp на моем мобильном устройстве.
Когда я создаю .apk, почти все функцииработает отлично;но это не так:
<ion-tab [root]="tab1Root" [enabled]=" _tabs.textToEnableTabs !='AddListPage' " tabTitle="Pending Tasks" tabIcon="home"></ion-tab>
<ion-tab [root]="tab2Root" [enabled]=" _tabs.textToEnableTabs !='AddListPage' " tabTitle="Finished Tasks" tabIcon="information-circle"></ion-tab>
<ion-tab [root]="tab3Root" [enabled]=" _tabs.textToEnableTabs !='AddListPage' " tabTitle="Contact Author" tabIcon="contacts"> </ion-tab>
Этот код проверяет, находимся ли мы на определенном компоненте или нет, поэтому в случае, если мы находимся на этом компоненте, мы делаем вкладки не активируемыми.
КакЯ сказал, что эта функциональность отлично работает при разработке, а не на производстве, где вкладки ВСЕГДА кликабельны.Таким образом, тег [enabled]
или условие не работает нормально.Я не знаю.
В чем может быть проблема?
Если вам это поможет, у меня есть сервис ShowTabsService, где я создаю это свойство
//ShowTabsService.ts
textToEnableTabs
ИЯ инициализирую на конструкторе:
"ShowTabsService.ts constructor
constructor()
{
this.textToEnableTabs=""; /*value will change on the addList.ts constructor and on its onDestroy, to make tabs available again*/
}
Когда я нахожусь на конструкторе AddListPage, где вкладки не должны быть кликабельными, я делаю:
//AddListPage.ts
constructor(
private _viewController:ViewController,
private _tabs:ShowTabsService) {
this._tabs.textToEnableTabs=this._viewController.name; //this will be 'AddListPage' when we are on that component
}
И на ngOnInit, когда мыоставив этот компонент, мы сделаем вкладки кликабельными снова, выполнив:
//AddListPage.ts
ngOnDestroy()
{
this._tabs.textToEnableTabs="";
}
Может быть, это не лучший способ сделать это (я новичок в Angular и Ionic), но, как я уже сказал, это работает прямо наразвитие.Не при установке подписанного APK