#android #angular #typescript #ionic-framework
Вопрос:
У меня странное поведение с ионным 5 угловым 10.
В моем приложении есть функция уведомлений, которая позволяет пользователю переходить на определенную страницу в зависимости от типа уведомления. К сожалению, на устройстве Android мне нужно отделить действие уведомления в зависимости от состояния приложения (фон или передний план). Когда приложение находится в фоновом режиме, отображается Push-уведомление, но когда приложение работает на переднем плане, я изменил свою функцию, используя локальное уведомление, потому что я понимаю, почему Push-уведомление не работало на переднем плане Android.
Вот мой код.
тс
import { NavigationExtras, Router } from ‘@angular/router’;
import { ActionPerformed as LocalNotificationActionPerformed, LocalNotifications } from “@capacitor/local-notifications”;
constructor (private router: Router) {}
LocalNotifications.addListener(‘localNotificationActionPerformed’, (res: LocalNotificationActionPerformed) => {
let params: NavigationExtras = {
queryParams: {chatToEmployeeId: res.notification.extra.employeeId}
}
this.router.navigate([’/friend-list/chat’], params);
})
isDisabled() {
return this.newMsg == ‘’ ? true : false;
}
У меня есть кнопка со свойством [отключено], которая с помощью функции возвращает значение true или false в зависимости от некоторого условия.
HTML
<ion-textarea placeholder=“Type a message…” id=“newMsg” name=“newMsg” class=“message-input” rows=“1” autoGrow=“true” style=“max-height: 100px;” maxLength=“500” ngModel [(ngModel)]=“newMsg”>
<ion-button id=“sendMsg” [disabled]=“isDisabled()” class=“msg-btn” (click)=“sendMessage()”>
Когда пользователь нажимает на уведомление из Push-уведомления, оно работает нормально. Но, когда пользователь нажимает из локального уведомления, кнопка всегда отключается, я знаю, почему, я пробовал много разных способов, но никто не работает для меня.
Комментарии:
1. Узнайте, почему этот файл.newMsg не имеет никакой ценности. Скорее всего, он не определен в случае локального уведомления.
2. я назначаю этому.newMsg пустую строку при загрузке страницы