2017-01-31 20 views
2

類似の質問がいくつかありますが、この問題の解決策はまだ見つかりませんでした。ダーツ/角2:ページリロード時のPub serve 404

は、ローカルに私の角2 /ダートアプリケーションを起動するために、--port 13371

仕える私は

パブを使用すると仮定します。

@RouteConfig(const [ 
    const Route(
     path: '/home', 
     name: 'Home', 
     component: HomeComponent, 
     useAsDefault: true 
), 
    const Route(
     path: '/about', 
     name: 'About', 
     component: AboutComponent 
) 
]) 
class AppComponent {} 

と、このようなテンプレート:Dartiumで

<nav> 
     <ul> 
     <li> 
      <a [routerLink]="['Home']">Home</a> 
     </li> 
     <li> 
      <a [routerLink]="['About']">About</a> 
     </li> 
     </ul> 
    </nav> 

またはhttp://localhost:13371/homeに私をリダイレクトし、私はhttp://localhost:13371/に行き、別のブラウザベースのファイルで、私はこのように設定されたルータを持っています。 リロードを押すたびに404エラーが表示されます。

この理由はサーバー構成です。角度がURLを変更すると、どこに行くか、URLを書き換える方法がわかります。しかし、サーバー/homeまたは​​は存在しません。

私の質問はどうすればpubを常にindex.htmlにリダイレクトして、リフレッシュしてサブサイトに転送できるのですか? pubspec.yamlに追加する設定がありますか?

答えて

3

どちらか

bootstrap(AppComponent, [ 
    /* other providers */, 
    provide(LocationStrategy, useClass: HashLocationStrategy), 
]) 

を追加したり、書き換えをサポートnginxのようなプロキシを使用しています。 pubはそれ自体をサポートしていません。

0

https://pub.dartlang.org/packages/pub_serve_rewritesがパス "/" にスラッシュを使用しないでくださいも参照してください。試してみてください:

+0

これは、Dart Angular 2/3で使用されるルータには該当しません。 –

関連する問題