Angularjs Angular:为什么Chrome需要根URL的哈希

Angularjs Angular:为什么Chrome需要根URL的哈希,angularjs,Angularjs,我看到IE和Chrome在加载根URL时有不同的行为,我不明白为什么。 我的控制器配置为: $routeProvider.when("/", { title: "Home", controller: "mainController", controllerAs: "mainCtrl", templateUrl: "/templates/mainView.html" } 我的导航栏中有一个指向根的链接。如果我在URL中包含哈希,它对Chrome很有效。但是,如果我只有一个斜杠,它

我看到IE和Chrome在加载根URL时有不同的行为,我不明白为什么。 我的控制器配置为:

$routeProvider.when("/", {
  title: "Home",
  controller: "mainController",
  controllerAs: "mainCtrl",
  templateUrl: "/templates/mainView.html"
}
我的导航栏中有一个指向根的链接。如果我在URL中包含哈希,它对Chrome很有效。但是,如果我只有一个斜杠,它将不会加载主控制器/视图。不管我是否包括在内,IE都有效

换句话说,这是有效的:

<a href="/#/">Home</a>

这并不是:

<a href="/">Home</a>

有什么想法吗?我可以通过包含散列来让它工作,但我想知道为什么我需要这样做。谢谢你的提示。
如果您没有设置html5模式,Marcus将不使用#标记。假设您的应用程序在这里:
http://www.somedomain.com/myApp/
a
“/”
会把你带到这里
http://www.somedomain.com/
“/#/”
将带您来到这里
http://www.somedomain.com/myApp/#/

这是我关于SO的第一个问题,我似乎还没有将代码格式化。上面第二个a标记的意思是href=“/”。同样,控制器配置的格式也不正确。对不起-(你可以在HTML5模式下运行,该模式在url中不包含哈希标记,请参阅感谢Marko的帮助谢谢Mathew。我想我看到了问题。如果我只有“/”IE似乎会将其转换为“#/”,从而使位置变为“”。这反过来又会使上述路由规则起作用。Chrome似乎不会这样做。奇怪。