0

当使用不带 html5Mode 的 ui-router(使用 hangbang URL 语法)时,使用 hrefs 对其他页面(或静态 html 内容)进行整页刷新的锚标记工作正常。一旦我启用了 html5Mode,href 就会更新浏览器中的 URL,但不会发出服务器请求。

我的印象是 html5Mode 会像非 html5Mode 一样工作,因为它会尊重 href 与 ui-sref。

我错过了什么吗?

我创建了一个 plunker,如果将其设置为 html5Mode(true),则无法导航到静态 html 文件。如果设置 html5Mode(false),则可以导航到静态 html 文件。在这两种情况下,所有其他路由都可以正常工作。

有任何想法吗?

http://plnkr.co/edit/nFtjHX?p=preview

并且因为我需要在添加 plunker 链接时显示代码,所以这里是配置:

app.config(function($locationProvider) {
  $locationProvider.html5Mode(false);
});
4

1 回答 1

1

您可以使用它<a href="/external.html" target="_self">external</a>来执行整页加载。

ui-router 处理普通 href,因此开发人员可以选择使用/或普通 href/ui-sref

于 2017-01-04T17:12:24.317 回答