使用angularjs的路由时,会与锚点冲突,导致页面锚点不可用
解决方法
方法一:添加如下配置
config(["$locationProvider", function ($locationProvider) {
$locationProvider.hashPrefix("");
$locationProvider.html5Mode({
rewriteLinks: false
});
}]);
此配置不会重写url,也就是说url仍会以#的形式访问页面,虽然锚点可用,但不会在url中体现锚点,不明白的话可以与方法二对照
方法二:修改方法一中的配置
.config(["$locationProvider", function ($locationProvider) {
$locationProvider.hashPrefix("");
$locationProvider.html5Mode(true);
}]);
此方法必须在html的header中添加项目根路径
<base href="/sdk/" />
此时页面url将不再以#的形式出现,下图的#aaa是锚点名,而此锚点名不会在方法一中的url里面展示