5

domain.com/myAngularApp など、一部のページで Angular を多用する Django アプリに取り組んでいます。

Angular ページ内では、Angular ルーティングを使用して、そのページ内の異なるビュー/状態間を移動しています。ただし、Web サイト全体に、Django へのラウンド トリップ リクエストを発生させる必要があるナビゲーション リンクがあります。ただし、すべてのページには、Angular ルート宣言を含む同じコンパイル済み JavaScript ファイルが含まれています。

だから私の質問は次のとおりです:Angularに独自のルートを管理させ、場所が(主にページ上のリンクをクリックすることによって)変更されたときに、明示的に所有するように指示されていないパスに邪魔にならないようにする方法、つまり、ドメイン外の別のサブディレクトリに。

私のルーティング宣言は次のようになります。

myApp.config( function($locationProvider, $routeProvider) {
  $locationProvider.html5Mode(true);
  $routeProvider.when('/myAngularApp/', {
    templateURL: 'template1.html'
  });
  $routeProvider.when('/myAngularApp/stuff', {
    templateURL: 'template12.html'
  });
  $routeProvider.otherwise({redirectTo:  <not sure what to do here...>  });
})

私は次のようなことを試しました:

$routeProvider.otherwise({redirectTo: function(a1,r,a3){ window.location.href = r }})

ただし、これにより、一致しないルートでページが際限なく更新されます。

そうでなければステートメントを省略すると、直接アクセスしたときにルートが一致しないページを離れることは不可能になるようです...理由が本当にわかりませんか?

私がしたいことをすることが可能でなければなりませんか?

4

1 に答える 1