2013-02-01 9 views
20

私はちょうど角度で出始めているので、これは一般的な初心者の間違いかもしれないが、私は、次のURL形式を達成しようとしています:

私は、デフォルトであるべきと考えてい
http://myapp.localhost/index.html#!/about 

角度?

これは私の設定です:

私のHTMLで
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) { 
    //... 
}); 

私はそうのような単純なアンカー持っている:私はそのアンカーをクリックすると

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

しかし、構築結果のURLは次のとおりです。

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

明らかに私のルートと一致しないものは...実際に何が起きているのかは分かりませんここ、または私が間違ってやっていること。私は仮想ホストの下で自分のローカルApacheインスタンスを実行しています。 mod_rewriteで何も起こっていないので、Angularがこれをやっているようです。

答えて

22

プロパティではなく、hashPrefixを設定する方法です。 $locationProvider.hashPrefix('!');