angularjs – $location哈希前缀

前端之家收集整理的这篇文章主要介绍了angularjs – $location哈希前缀前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我刚刚开始与Angular,所以这可能是一个常见的新手错误,但我试图实现以下url格式:
http://myapp.localhost/index.html#!/about

我认为应该是Angular的默认?

这是我的配置:

angular.module('App',[]).config(function($routeProvider,$locationProvider,VIEWS_ROOT) {
    $locationProvider.html5Mode(false);
    $locationProvider.hashPrefix = '!';

    // Routing
    $routeProvider.when('/',{templateUrl: './welcome.html',controller: 'WelcomeController'});
   $routeProvider.when('/about',{templateUrl: './about.html',controller: 'AboutController'});
})
.run(function($rootScope) {
    //...
});

在我的html中,我有一个如此简单的锚点:

<a href="#!/about">About</a>

但是当我点击该锚点时,构造的结果URL为:

http://myapp.localhost/index.html#/!/about

这显然无法匹配我的任何路线…有点困扰在这里发生了什么,或者我做错了什么。我在vhost下运行我的本地Apache实例。 mod_rewrite什么都没有,所以看起来Angular正在这样做。

这是一种设置hashPrefix的方法,而不是属性。 $ locationProvider.hashPrefix( ‘!’);

猜你在找的Angularjs相关文章