0

現在の $location.path を使用してコンテンツを動的にロードする角度モジュールを作成しました。モジュール構成を次のように設定しました。

var app = angular.module('App',['ngRoute']).
config(
    ['$routeProvider','$locationProvider','$sceProvider'],
    function($routeProvider,$locationProvider,$sceProvider){
        $routeProvider.
            otherwise({
                templateUrl: 'views/_view.html',
                controller: 'ViewCtr',
                resolve: {
                    load: function(dataFactory,$route,$location){
                        return dataFactory.load($location.path());
                    }
                }
            });
        $locationProvider.html5Mode(true);
        $sceProvider.enabled(false);
});

コンテンツの読み込み時に $scope.$on('$routeChangeStart') を設定していくつかのアニメーションを追加すると、完全に機能しますが、ルート変更が 2 回発生します。routeProider を「それ以外」に設定し、毎回リダイレクトするためだと思います。

私が間違っている場合は訂正してもらえますか、または実際のルート変更やリダイレクトと区別できるかどうか、またどのように区別できるか教えてもらえますか? ありがとうございました。

4

1 に答える 1

0

$routeChangeStart の代わりに $routeChangeSuccess を使用するように切り替えます。ng-animate ( https://docs.angularjs.org/api/ngAnimate ) も調べます。おそらく、routeChanges をリッスンするよりもうまく処理できるからです。

于 2014-11-12T13:40:21.560 に答える