为什么角有时会在URL中使用哈希,而其他时间则使用悬峰?我已经开始从头开始编写两个Angular应用程序。都不使用HTML5模式。两者都有相同的默认路由。但是,默认URL的显示方式不同。
我已经看到这种随机行为至少一年了……在Angular-Route v1.6之前很久。另外,我一直使用Angular-UI-Router。
默认路由:
configRoutes.$inject = ['$urlRouterProvider'];
function configRoutes ($urlRouterProvider) {
$urlRouterProvider.otherwise('/');
}
应用#1解决此问题... http://localhost:3000...对此... http://localhost:3000/#/
应用#2解决此问题... http://localhost:3001...对此... http://localhost:3001/#!/
注意默认URL中的最后两个字符。
我知道如何激活HTML5模式和漂亮的URL。那不是我要的。我真的很想理解上面两个URL的意义,以及为什么Angular对它们的编写不同。
当前版本:
Angular-UI-Router v0.3.2
Angular V1.6.0
从Angular 1.5升级到Angular 1.6时,应用程序的URL从/#/
更改为/#!/
。我们通过在应用程序配置中配置hashprefix来解决问题:
angular.module("myApp").config(function($locationProvider) {
$locationProvider.hashPrefix("");
});