迷惑なハッシュバンを使用しない AngularJS ルーティング (#)
AngularJS では、ルーティングを使用してアプリケーションのさまざまな状態とビューを定義できます。 $routeProvider を使用してルーティング ルールを宣言する場合、ブラウザ内の URL にハッシュ記号 (#) が含まれていることに気づくかもしれません。たとえば、「test」ページに移動すると、「app/test」ではなく「app/#/test」のように表示される場合があります。
ハッシュの理由
AngularJS は、HTML5 以外のブラウザに対してハッシュ シンボルを使用して、サーバーへの HTTP 呼び出しを防ぎます。ハッシュがないと、古いブラウザは指定された href でサーバーにリクエストを送信しますが、これはクライアント側のナビゲーションには望ましくありません。
ハッシュバンの回避
回避するにはハッシュバンでは、$locationProvider.html5Mode(true) メソッドを使用して、HTML5 履歴 API (利用可能な場合) を使用するように AngularJS に指示できます。この API により、URL の処理が向上し、ハッシュなしでよりクリーンな URL を使用できるようになります。
サポートされているブラウザ
HTML5 履歴 API は、ほとんどの最新のブラウザでサポートされています。サポートされているブラウザのリストは次のとおりです:
例
AngularJS アプリケーションで HTML5 モードを有効にするには、次のコードを構成に追加するだけです。
app.config(function($locationProvider) { $locationProvider.html5Mode(true); });
Once HTML5 モードを有効にすると、URL からハッシュバンが削除され、よりユーザーフレンドリーで、ユーザーに見た目の美しいエクスペリエンスを提供します。
以上が迷惑なハッシュバン (#) を AngularJS ルーティングから削除するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。