在Angular 1.6中使用URL hash-bang(#!/)前缀而不是简单的哈希(#/)
我上一次工作在我的项目上后,AngularJS项目上的URL已经从localhost:3000/admin#/更改为localhost:3000/admin#!/
没有在网上find,有人知道这是什么?
它是从AngularJS 1.6新增的,它添加了一个新的哈希前缀。
由于aa077e8 ,用于
$locationhash-bang URL的默认哈希前缀已经从空string('')变成了bang('!')。 如果您的应用程序不使用HTML5模式,或者在不支持HTML5模式的浏览器上运行,并且您没有指定自己的哈希前缀,则客户端URL现在将包含!字首。 例如,而不是mydomain.com/#/a/b/c,url将变成mydomain.com/#!/a/b/c。
从这里获取更多信息。
如果你想删除这个前缀,添加这个代码到你的configuration:
appModule.config(['$locationProvider', function($locationProvider) { $locationProvider.hashPrefix(''); }]);
每个人都build议删除前缀,但你也可以简单地添加一个! 到客户端的URL(如果不使用HTML5模式,你可能会做,如果你在这里)。
所以在你的客户端文件中,像这样更新URLS:
#/foo/bar > #!/foo/bar
在Angular 1.6.0中,默认的hashPrefix已被更改为! 。 查看相关的提交和更改日志条目 。