問題タブ [angular-router-params]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
angular - URL パラメーターが不適切な場合にワイルドカード ルートをトリガーするにはどうすればよいですか?
Angular 6 では、Observable を使用して、次のように URL パラメータに基づいて詳細レコードのフェッチを管理しています。
catchError パイプでは、存在しない URL に移動しているだけなので、ワイルドカード ルートがトリガーされ、PageNotFoundComponent が表示されます。それは本当に複雑に思えますが、ルーターにそのコンポーネントを表示させる方法が他にわかりません。より良い方法はありますか?
これは私のセットアップのデモです: https://stackblitz.com/edit/angular-router-not-found?file=src%2Fapp%2Fhero%2Fhero-detail.component.ts
javascript - Angular ルーターは、IIS サーバーにデプロイされたときにクエリ パラメータを削除します
Angular ルーターを使用しようとしていますが、アプリのデプロイ時に問題が発生します。まず、ここに私のバージョンがあります:
2つの可能なルートが必要です:
- mydomain.com/TestRouting/my-route
- mydomain.com/TestRouting/my-route?route=whatever
とても簡単そうですよね?
特定のモジュールでのルート定義は次のとおりです。
もちろん、このモジュールを AppModule にインポートし、app.component.html に router-outlet マークアップを追加しました。
私の RouteComponent では、次の方法でクエリ パラメータを取得します。
IIS サーバーに Web サイトを展開したので、次の web.config ファイルを追加しました。
問題: ローカルではうまく動作します... (ng serve) ローカル モードとプロダクション モードでもうまく動作します (ng serve --prod)
このコマンドでアプリをビルドします: ng build --base-href /TestRouting/ --prod
展開したら、
mydomain.com/TestRouting/はmydomain.com/TestRouting/my-routeにリダイレクトします(予期される動作) mydomain.com/TestRouting/my-routeはコンポーネントをレンダリングします (予期される動作) しかし、 mydomain.com /TestRouting/my-route?route= mydomain.com/TestRouting/my-routeへのリダイレクトをテストします (まあ、それは問題です...)
誰にもアイデアがありますか?どうもありがとうございました。