2017-02-19 13 views
0

私は基本的なルーティングを持つAngular 2の基本的なTo-Doアプリを開発しました。リンクをクリックすると、リンクの末尾に#が自動的に追加されます。たとえば、メモページにルーティングする場合は、角を開いてhttp://localhost:4200/#/notesを開きます。 #私のURLに表示される#を無効にする方法はありますか?Angular 2が#を私のURLに追加しないようにするには?

+0

HashLocationStrategyを使用すると予想されます。https://angular.io/docs/ts/latest/guide/router.html#!#browser-url-stylesこれはデフォルトではないので、この戦略を目的に合わせて選択しました。 –

+0

@JBニジェットありがとう。それが問題を解決しました。 –

答えて

1

あなたは設定することにより、PathLocationStrategy使用することができますuseHash

@NgModule({ 
    imports: [ 
    .... 
    RouterModule.forRoot(ROUTES, { useHash: false }) 
    ] 
}) 

NOTEfalse valueこれそれが動作する方法がありますが、ページを更新するとき、ロードすることはできません現在のページを再度表示します。リフレッシュ時に再度ロードするには、サーバー側に適切なルートが設定されていることを確認する必要があります。 クライアント側(Angular2)は、更新時にサーバールーティング構成で実行する必要がある現在のページを取得する責任を負いません。

関連する問題