Я создаю гибридное приложение, используя React / Create React App / Cordova.Из-за нескольких проблем с UIWebView, таких как плавающие курсоры и общий некачественный рендеринг, я переключился на использование WKWebView.WKWebView улучшил проблемы рендеринга, но у меня возникла проблема с History Web API.
В рамках своей основной навигации / маршрутизации я помещаю значение, которое представляет текущую страницу в API истории, используя строку ниже.Затем я выскакиваю значения при необходимости и перехожу на пользовательский маршрутизатор.Это работает нормально с использованием UIWebView, но не с WKWebView из-за проблемы безопасности.
window.history.pushState({pageId: pageId}, null, action.pageId);
При нажатии я получаю следующую ошибку (ПРИМЕЧАНИЕ: я заменил идентификаторы на {HASH} для этого поста):
SecurityError: Blocked attempt to use history.pushState() to change session history URL from file:///Users/name/Library/Developer/CoreSimulator/Devices/{HASH}/data/Containers/Bundle/Application/{HASH}/App.app/www/index.html to file:///Users/name/Library/Developer/CoreSimulator/Devices/{HASH}/data/Containers/Bundle/Application/{HASH}/App.app/www/login. Paths and fragments must match for a sandboxed document.
Есть идеи у кого-нибудь?