Я использую Predix UI seed и я пытаюсь удалить # из URL, так чтоPredix UI Seed приложение - удалить хэш из URL
http://localhost:5000/#/dash
становится
http://localhost:5000/dash
Каков наилучший способ сделать это?
seed-app.html страница, где я думал, что я мог бы настроить структуру URL, имеет следующие основные элементы
...
<!-- app route -->
<link rel="import" href="../../bower_components/app-route/app-location.html">
<link rel="import" href="../../bower_components/app-route/app-route.html">
...
<!-- px components -->
<link rel="import" href="../../bower_components/px-app-nav/px-app-nav.html">
<link rel="import" href="../../bower_components/px-view/px-view.html">
<!-- app-location captures url and assigns _route value -->
<app-location
id="carbonLocation"
route="{{_route}}"
use-hash-as-path>
</app-location>
<!-- /dashboards route and view -->
<app-route
route="[[_route]]"
pattern="/dashboards"
active="{{_dashboardsActive}}">
</app-route>
...
<script>
Polymer({
is: 'seed-app',
properties: {
routesActive: {
type: Boolean,
value: false
},
...
// Sets app default base URL for client-side routing
pathPrefix: {
type: String,
value: '#'
}
},
ready: function(){
this._checkForDefaultRoute();
},
_checkForDefaultRoute: function() {
// set default route to /dashboards
var l = window.location;
if((l.hash === "#/" || l.hash === "") && l.pathname === "/") {
l.hash = "/dashboards";
}
}
});
</script>
Я удалил PATHPREFIX
pathPrefix: {
type: String,
value: ''
}
и изменили функцию _checkForDefaultRoute как так
_checkForDefaultRoute: function() {
// set default route to /runtime
var l = window.location;
if((l.hash==="") && l.pathname==="/"){
l.pathname="/login";
}
}
В результате Мне все равно нужно использовать # как префикс для доступа к страницам.
Но почему вы хотите удалить хэш из URL? –
Потому что это ничего не значит для меня, я хочу иметь «чистый» путь. Есть ли веская причина держать его там? –