Уведомление PWA Pu sh в подпапке, при этом FCM не открывает подпапку - PullRequest
0 голосов
/ 05 августа 2020

Я использую FCM в своем PWA для отправки уведомления pu sh в PWA, который находится во вложенной папке сайта. Проблема в том, что если я открываю уведомление pu sh, оно переходит на домашнюю страницу, а не во вложенную папку, но если вкладка открыта с домашней страницей, браузер рабочего стола chrome открывает вложенную папку, каково предполагаемое поведение является. Это также происходит, когда приложение установлено как PWA на устройстве android.

Как сделать так, чтобы браузер, открывающий PWA, не являлся корневой / домашней страницей?

importScripts('https://www.gstatic.com/firebasejs/7.17.1/firebase-app.js');
importScripts('https://www.gstatic.com/firebasejs/7.17.1/firebase-messaging.js');

const firebaseConfig = '... config ....';

firebase.initializeApp(firebaseConfig);


const messaging = firebase.messaging();


self.addEventListener('notificationclick', function(event) {
  console.log("click on event");
  const rootUrl = new URL('/', location).href;
  event.notification.close();
  // Enumerate windows, and call window.focus(), or open a new one.

  event.waitUntil(
    clients.matchAll().then(matchedClients => {
      for (let client of matchedClients) {
        if (client.url === rootUrl) {
          return client.focus();
        }
      }
      return clients.openWindow("https://www.example.com/subfolder");
    }
    )
  );
});

...