【发布时间】:2017-05-04 17:07:10
【问题描述】:
自从我上次处理我的项目以来,我在 AngularJS 项目中的 URL 已从 localhost:3000/admin#/ 更改为 localhost:3000/admin#!/...
网上没有找到,有人知道这是什么吗?
【问题讨论】:
标签: javascript angularjs url hashbang angularjs-1.6
自从我上次处理我的项目以来,我在 AngularJS 项目中的 URL 已从 localhost:3000/admin#/ 更改为 localhost:3000/admin#!/...
网上没有找到,有人知道这是什么吗?
【问题讨论】:
标签: javascript angularjs url hashbang angularjs-1.6
在 Angular 1.6.0 中,默认的 hashPrefix 已更改为 !。
请参阅related commit 和changelog entry。
【讨论】:
它是 AngularJS 1.6 的新功能,它添加了一个新的哈希前缀。
由于aa077e8,默认哈希前缀用于
$locationhash-bang URL 已从空字符串 ('') 更改为 bang ('!')。如果你的 应用程序不使用 HTML5 模式或在浏览器上运行 不支持 HTML5 模式,并且你没有指定你自己的 hash-prefix 然后客户端 URL 现在将包含!前缀。为了 例如,URL 将变为而不是mydomain.com/#/a/b/cmydomain.com/#!/a/b/c.
Source here 了解更多信息。
如果您想删除此前缀,请将此代码添加到您的配置中:
appModule.config(['$locationProvider', function($locationProvider) {
$locationProvider.hashPrefix('');
}]);
【讨论】:
每个人都建议删除前缀,但您也可以简单地将 ! 添加到客户端 URL(如果不使用 HTML5 模式,如果您在这里,您可能会这样做)。
因此,在您的 客户端 文件中,像这样更新 URL:
#/foo/bar > #!/foo/bar
【讨论】: