私はほぼ 1 年間、大規模な Angular アプリに取り組んできました。
これは、params を使用した 2 つのルートです (簡潔にするために短縮されています)。
/a/:id
/a/:id/b
ユーザーが/a/1
にいて、クエリ文字列が変更されたとします。たとえば、次のようになります。
/#/a/1?foo=123&bar=456
クエリ文字列を維持しながら、ユーザーを 2 番目のルートに誘導するリンクをページに表示したい/a/1/b
ので、最終結果は次の場所にリダイレクトされます。
/#/a/1/b?foo=123&bar=456
Angular 1.2 と新しい ngRoute モジュールを使用しています。
この動作を実現する最善の方法は何ですか?
編集:
私は今、私にはひどいと思われる実用的な解決策を持っていることに言及する必要があります. リンクは、ng-click
本質的に次のハンドラーにバインドされます。
$scope.navigateToBClick = function() {
var path = $location.path() + '/b',
search = $location.search();
$location.url(path + '?' + $.param(search));
};