どの角度角度で使用する方が良いですか?$location
またはwindow.location
です。
たとえば、$location.path()
またはwindow.location.href
を同じ作業に使用できます。どちらが適していますか?
誰でもお勧めできますか?
どの角度角度で使用する方が良いですか?$location
またはwindow.location
です。
たとえば、$location.path()
またはwindow.location.href
を同じ作業に使用できます。どちらが適していますか?
誰でもお勧めできますか?
$location
を使用して、AngularJSが行っている変更を認識できるようにしてください。 window.location
を直接操作すると、AngularJSはそれを認識せず、次のダイジェストサイクルが他のAngularJSメソッドによって呼び出されるまで変更は行われません。実際にはこれはAngularJSは角アプリ(すなわちNOルート定義される)の外側の位置については、あなたのangularjsアプリのルートを使用$location.path("yourroute");
または$location.url('/RouteTo/');
に場所について$timeout
のようなネイティブメソッドのラッパー、$interval
など
を持っている理由の1つです、昔ながらのJavaScriptが機能します:
window.location = "http://www.domain.com/login"
'$のlocation'は** window.locationのためのラッパー** angularjsです。 ** angularJS **はUIに変更を加えるための変更検出技術に大きく依存しています。 Angularは、$ scopeなどの角度のあるオブジェクトに対して行うすべての変更に対してダイジェストサイクルを実行することでこれを行います。 window.locationを直接使用すると、angleはその時点で変更を検出できなくなります。したがって、$ locationを使用します。これは、内部的にwindow.locationを使用し、ダイジェストサイクルを呼び出します。 この方法では、場所の変更が瞬時に更新されます。 –