【问题标题】:Remove #!/ from http local server url [duplicate]从 http 本地服务器 url 中删除 #!/ [重复]
【发布时间】:2018-07-12 06:51:28
【问题描述】:

我正在创建一个 AngularJs 应用程序,一切正常。

然而,我在尝试从我的网址中删除 #!/ 时遇到问题

当我在控制台中运行 http-server 时,它会抛出

适用于: http://127.0.0.1:8080

然后我进入那里,url自动变为http://127.0.0.1:8080/#!/

我的路由提供程序中有这个

    .when('/', {
        templateUrl: 'galleryMap.html',
        controller: 'GalleryMapController'
    })

    .when('/photo/:id', {
        templateUrl: "detail.html",
        controller: 'DetailPageController'
    })

我这样称呼网址

$window.location.href = /photo/3;
$window.location.href = /;

除非他们的网址写成这样http://127.0.0.1:8080/#!/photo/3,否则两者都不起作用 http://127.0.0.1:8080/#!/

是否有可能让它像这样的普通网址一样工作 http://127.0.0.1:8080/photo/3 没有那些可怕的标签?

【问题讨论】:

  • 你用的是什么路由器?
  • @DanielA.White galleryMapApp.config(function ($routeProvider) { $routeProvider .when('/', { templateUrl: 'galleryMap.html', controller: 'GalleryMapController' }) .otherwise( {redirectTo: '/' }); });

标签: javascript angularjs


【解决方案1】:

“可怕的标签”用于指示客户端的路由,而不是服务器端。在客户端加载允许页面无需完全重新加载即可加载新页面。

但是,您仍然可以在没有哈希的情况下执行客户端路由。您应该能够将其添加到应用程序的配置中以删除哈希:

$locationProvider.html5mode(true);

【讨论】:

猜你喜欢
  • 2013-03-06
  • 2012-01-02
  • 1970-01-01
  • 2014-03-19
  • 2014-11-05
  • 2016-09-20
  • 2017-07-30
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多