【问题标题】:How can I hide the hash route in Angularjs如何在 Angularjs 中隐藏哈希路由
【发布时间】:2015-05-12 21:11:57
【问题描述】:

我想像面包屑等一样保持哈希的完整性,但我只是不想在路由中显示哈希。有什么方法可以将哈希保留在后台但将其隐藏在 URL 中?我已经对此进行了一些研究,并且找到了一些完全摆脱散列的答案。任何帮助,将不胜感激。谢谢。

【问题讨论】:

  • 需要配置$locationProvider.html5Mode(true);见stackoverflow.com/a/14771362/3687474
  • 不能兼得。如果不使用 html5 模式且没有哈希,则不设置路由器来确定路径。
  • @aorfevre 谢谢,但这会带走 SPA 的一部分吗?
  • @RitesBless 完全没有,您只需要设置服务器以将服务器路径映射到应用程序入口点并遵循 SEO 和 <base> 准则

标签: java javascript angularjs


【解决方案1】:
angular.module('scotchy', [])

.config(function($routeProvider, $locationProvider) {

    $routeProvider
        .when('/', {
            templateUrl : 'partials/home.html',
            controller : mainController
        })
        .when('/about', {
            templateUrl : 'partials/about.html',
            controller : mainController
        })
        .when('/contact', {
            templateUrl : 'partials/contact.html',
            controller : mainController
        });

    // use the HTML5 History API
    $locationProvider.html5Mode(true);
});

阅读此博客,它应该包含您需要了解的所有内容。 Pretty URLs

【讨论】:

    猜你喜欢
    • 2012-12-28
    • 1970-01-01
    • 1970-01-01
    • 2014-11-15
    • 2016-08-22
    • 1970-01-01
    • 1970-01-01
    • 2014-01-10
    相关资源
    最近更新 更多