Событие PWA Notificationclick не обработано - PullRequest
0 голосов
/ 01 марта 2019

Я использую сервисные работники с push-уведомлениями с сервера.Push-уведомления и опции кнопки отображаются:

self.addEventListener('push', (e) => {
    console.info('Event: Push');   
    const title = 'Push notification demo';
    const options = {
        icon: '/images/icons/pwa512.png',
        actions: [
            { action: 'like', title: 'Like' },
            { action: 'reply', title: 'Reply' }
        ]
    };
    e.waitUntil(self.registration.showNotification(title, options));
});

Так что теперь я хочу обработать щелчок по опциям:

self.addEventListener('notificationclick', function (event) {       
        if (!event.action) {
            // Was a normal notification click
            console.log('Notification Click.');
            return;
        }
        switch (event.action) {
            case 'like':
                console.log('User like.');
                break;
            case 'reply':
                console.log('User reply.');
                break;

            default:
                console.log('Unknown action clicked:');
                break;
        }        
});

Событие щелчка не обрабатывается.Я использую Chrome 72.0.3626.119 (64 бит) на рабочем столе.Но никакие события не перехватываются.В мобильном браузере тоже.Я изменил код так:

self.addEventListener('notificationclick', function (event) {
    event.waitUntil(async function () {
        if (!event.action) {
            // Was a normal notification click
            console.log('Notification Click.');
            return;
        }
        switch (event.action) {
            case 'like':
                console.log('User like.');
                break;
            case 'reply':
                console.log('User reply.');
                break;

            default:
                console.log('Unknown action clicked:');
                break;
        }
    }());
});

Но никаких событий не происходит.Что я забыл?С наилучшими пожеланиями.Ingd

...