Vue отозвать разрешения API уведомлений - PullRequest
0 голосов
/ 05 августа 2020

Я реализую PWA в своем приложении Vue и хочу использовать API уведомлений , чтобы побудить пользователей вернуться в приложение, если они получат сообщение.

Вы можете включить уведомления по электронной почте и в браузере, установив флажок в приложении и отправив свой выбор. Значения на бэкэнде: bool, и они распространяются правильно:

methods : {
    onSubmit() {

        if (!("Notification" in window)) {
            alert("This browser does not support desktop notifications");
        } else {
            if (Notification.permission !== 'denied') {
                Notification.requestPermission().then(permission => {
                    if (permission === 'granted') {
                        this.$store.dispatch('changeBrowserNotificationStatus', this.browserNotificationsAttribute)
                            .then(() => {
                                this.$store.commit('UPDATE_USER_BROWSER_NOTIFICATIONS', this.browserNotificationsAttribute)
                            });
                    }
                })
            }
        }

        this.$store.dispatch('changeEmailNotificationStatus', this.emailNotificationsAttribute)
            .then(() => {
                this.$store.commit('UPDATE_USER_EMAIL_NOTIFICATIONS', this.emailNotificationsAttribute)
            });

        this.$store.dispatch('closeModal')
    },
},

Это работает нормально до тех пор, пока пользователь не захочет прекратить получать уведомления браузера. Поскольку Notification.permission является полем только для чтения, есть ли способ программно отозвать разрешение? приложение закрыто.

...