gpt4 book ai didi

javascript - Angular 新路由器从 URL 中删除/#

转载 作者:行者123 更新时间:2023-11-27 23:50:27 25 4
gpt4 key购买 nike

我使用的是 Angular 1.4.6 和新的路由器版本 0.5.3,并且想要从 URL 中删除“/#”。在互联网上似乎找不到任何相关信息。

编辑:$locationProvider.html5mode(true);给出以下错误:未捕获错误:[$injector:modulerr] 无法实例化模块应用程序,原因是:
类型错误:$locationProvider.html5mode不是一个函数

最佳答案

您只能在支持 HTML5 History API 的浏览器中从 URL 中删除主题标签。如您所见here ,IE9 不支持它,因此在这种情况下它将回退到主题标签。

话虽如此,为了使您的 URL 在支持的浏览器中美观,您可以启用 html5Mode使用$locationProvider配置如下。

  angular.module('myApp', [])  
.config(function($locationProvider){
$locationProvider.html5Mode(true);
});

除此之外,您还需要为 Angular-router 定义应用程序的基本 URL 来识别路由。如果您的网址是

http://localhost:8080/myApp/#showLogin
http://localhost:8080/myApp/#showHomePage

那么您需要使用 <base> 定义基本 URL标签如下所示

<head>
<base href="/myApp">
</head>

希望这有帮助:)

关于javascript - Angular 新路由器从 URL 中删除/#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32757368/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com