2017-08-11 14 views
0

リフレッシュ時または直接入力時に同じページを読み込むようにするには問題があります(内部リンクではクリックしません)。角度2で正しく動作するようにURL書き換えを取得する

現在、私は角2ルーティングのために、このコードを持っている:

import { NgModule }    from '@angular/core'; 
import { RouterModule, Routes } from '@angular/router'; 

import { RegistrationComponent } from './registration/registration.component'; 
import { HomepageComponent } from './homepage/homepage.component'; 



const appRoutes: Routes = [ 

    { path: 'register', component: RegistrationComponent }, 
    { path: '', component: HomepageComponent } 
]; 
@NgModule({ 
    imports: [ 
    RouterModule.forRoot(appRoutes) 
    ], 
    exports: [ 
    RouterModule 
    ] 
}) 
export class AppRoutingModule {} 

URLからハッシュ記号を削除し、まだそれがページをロードさせるには、私は次のようnginxの書き換えを持っている:

location/{ 
    try_files $uri $uri/ /index.html; 
} 

リフレッシュするか、/ registerルートを直接入力しようとするたびに、私はホームページにリダイレクトされます。ホームページにリダイレクトせずに/ registerページに留まる方法はありますか?

答えて

-2

AngularにはHashLocationStrategyPathLocationStrategyがあるため、URLの書き換えは不要です。

+0

私はハッシュ(HashLocationStrategyがないので)を望まないので、PathLocationStrategyを使用しています。私の理解と投稿に基づいて、PathLocationStrategyはサーバ側で何かを必要としているようですので、Nginxを書き換えます。何か不足していますか? – freetoplay

+0

すべてのリクエストをindex.htmlに渡すだけです。 – be4code

+0

上記のnginxのリライトディレクティブを使用していると思いますが、問題は今リフレッシュされてHomeComponentに戻ります。 /登録ページにとどまります。 – freetoplay

関連する問題