После долгих исследований я нашел возможные решения, которые вы можете использовать. Я пытался добиться этого на веб-сайте Linkedin через Chrome Extension
function runEmbedded(path) {
const namespaces = window.Ember.Namespace.NAMESPACES;
let application;
namespaces.forEach(function (namespace) {
if (namespace instanceof window.Ember.Application) {
application = namespace;
return false;
}
});
application.__container__.lookup('router:main').transitionTo(path);
}
const payload = '/some/new-path'
script.text = `(${runEmbedded.toString()})('${payload}');`;
document.documentElement.appendChild(script);
Второе решение / взлом :
Другой возможный взлом, когда веб-сайт не прослушивание действий pushState / replaceState из History API - это состояние pu sh 2 раза, а затем go назад. Пожалуйста, помните, что это всего лишь взлом.
history.pushState({}, '', msg.payload);
history.pushState({}, '', msg.payload);
history.back();