/ / Преминаване на потребители от несъчетания маршрут с HistoryLocation - ember.js

Преходни потребители от несравним маршрут с HistoryLocation - ember.js

С новата реализация на HistoryLocation в1.5.1, параметърът rootURL сега изисква наклонена черта. Сега това предизвиква проблеми за потребителите, които се опитват да получат достъп до приложението без последваща черта, тъй като ember смята, че не може да намери маршрут.

Например моята молба се намира на адрес /path/to/appтова е, което съществуващите потребители са маркирали и са свързани по подразбиране от нашата сървърна рамка (която създава в URL адреси на приложения с подрязани черти).

Има ли начин или за това,

1.Не разрешава никаква наклонена черта в HistoryLocation rootURL 2. Преминаване на потребителите, използващи рутера, когато се опитват да получат достъп до приложението без последваща наклонена черта?

От моя сървър имам window.rootURL с приложния URL на приложението без наклонена черта (има динамични сегменти на базата на достъпния ресурс). В моя рутер имам следното:

App.Router.reopen({
location: "auto",
rootURL: window.rootURL + "/"
});

Можех да тичам нещо подобно

if (location.pathName == window.rootURL) {
window.location.assign(window.rootURL + "/");
}

Но това ще доведе до презареждане на страницата, която изглежда сякаш не би трябвало да е необходима, тъй като вече имам пълно приложение на Ember.

Тъй като това приложение споделя компоненти с aНяколко Ember приложения, които имаме в нашата база код и има динамични сегменти в rootURL, създавайки маршрути само за пренасочване, няма да имат много смисъл (поне IMO).

И така, какво би било най-доброто решение за този проблем?

Отговори:

1 за отговор № 1

Без тон на мисъл, можете да използвате replaceState което нямаше да презареди страницата, но щеше да актуализира URL адреса, за да удари вашето приложение.

window.history.replaceState({},"", pathWithSlash);