问题
In a mean-stack web application, I use html5mode
and have the following code in index.html
:
<base href="/" />
<script src="https://appsforoffice.microsoft.com/lib/1/hosted/office.js"></script>
<script src="https://cdn.rawgit.com/devote/HTML5-History-API/master/history.js"></script>
I have defined the following angular-ui-router:
.state('addinHome', {
url: '/addin/home',
template: "home page"
})
.state('addinTest', {
url: '/addin/test',
template: '<a href="addin/home">one</a>',
controller: 'TestCtrl'
})
Then, I go to https://localhost:3000/addin/test
, clicking on one
leads me to https://localhost:3000/addin/test#%2Faddin%2Fhome
, whereas I would want to go to https://localhost:3000/addin/home
.
If I don't have office.js
and history.js
, clicking on one
does lead me to https://localhost:3000/addin/home
.
Does anyone know how to go to https://localhost:3000/addin/home
while keeping office.js
and history.js
?
回答1:
I found it... just use
template: '<a href="addin/home" target="_self">one</a>'
来源:https://stackoverflow.com/questions/44984905/routing-does-not-work-well-with-html5-history-api