web-dev-qa-db-ja.com

AngularJS1.1.5-URLにハッシュタグを自動的に追加

バージョン1.1.5がURLにハッシュタグを自動的に追加する理由と、これをオフにする方法を知っている人はいますか? IMOこれは醜いです。スラッシュで終わらないURLがある場合は常に発生します。 (私はルートなどを使用していません)。

したがって、この:

http://my.website.com/about

になります

http://my.website.com/about#/about

この:

http://my.website.com/about.html

になります:

http://my.website.com/about.html#/about.html

でもこれは:

http://my.website.com/about/

この問題はありません。

17
Kevin Beal

先日、この問題が発生しました。 $locationProviderのHTML5モードを有効にすることで解決しました。見る $ locationのドキュメント-HTML5モード$ locationの更新されたリンク-HTML5モード

これは次のようになります。

.config(['$locationProvider', function($locationProvider){
    $locationProvider.html5Mode(true).hashPrefix('!');
}]);
25
EnigmaRM

これはangularjs1.1.5で導入されたバグのようです(1.1.4ではこの問題が発生しないため)。私はここでバグを報告しました:

https://github.com/angular/angular.js/issues/308

3
jssebastian

$ routeProviderで、HTML5モードを次のようにtrueに設定します

$locationProvider.html5Mode(true);

そして、ページのヘッドセクションに次の行を追加します

<base href="/">
1
vijay