自从我上次参与项目以来,AngularJS项目上的网址已从localhost:3000/admin#/
更改为localhost:3000/admin#!/
...
网上没有找到任何内容,有人知道这是什么吗?
答案 0 :(得分:64)
它是AngularJS 1.6中的新增功能,它添加了一个新的哈希前缀。
由于aa077e8,用于
$location
hash-bang的默认哈希前缀 网址已从空字符串(''
)更改为爆炸('!'
)。如果你的 应用程序不使用HTML5模式或正在浏览器上运行 不支持HTML5模式,并且您尚未指定自己的模式 hash-prefix然后客户端URL现在将包含!
前缀。对于 例如,URL将成为mydomain.com/#/a/b/c
而不是mydomain.com/#!/a/b/c
appModule.config(['$locationProvider', function($locationProvider) { $locationProvider.hashPrefix(''); }]);
。
Source here了解更多信息。
如果要删除此前缀,请将此代码添加到配置中:
{{1}}
答案 1 :(得分:10)
每个人都建议删除前缀,但您也可以简单地将!
添加到客户端URL(如果不使用HTML5模式,如果您在这里,则可能会这样做。)
因此,在客户端文件中,请更新以下网址:
#/foo/bar
> #!/foo/bar
答案 2 :(得分:5)
在Angular 1.6.0中,默认的hashPrefix已更改为!
。
请参阅related commit和changelog entry。