AngularJS - Ui-router - 自动从根状态重定向

时间:2017-08-11 10:38:31

标签: angularjs angular-ui-router

我想简单地从/ to / shop重定向每个人键入根。我在控制器中尝试使用Average Relative To Local Call LocalCall 117.33 1.00 is 241.67 2.06 Enum 139.33 1.19 VCall 294.33 2.51 GetType 276.00 2.35,但它没有做到这一点。我想在没有$state.go的情况下这样做(因为在我的网站中也有没有路由的网址)。任何想法如何做到这一点?提前谢谢!

$urlRouterProvider.otherwise

2 个答案:

答案 0 :(得分:2)

您的控制器应如下所示:

 controller: function($state) {
               if ($state.current.name == 'root') { 
                  $state.go('shop'); 
               }
             }

您需要在控制器功能中注入$state

答案 1 :(得分:0)

试试这个:

在你的run函数中添加一个监听器到$ stateChangeStart,所以状态改变的一切,它将检查它是否是root然后将改为shop:

        .run(["$injector", "$rootScope",
                    function($injector, $rootScop) {
                        $rootScope.$state = $injector.get("$state");
                          //-----Track State Change for request Token -------------
                        $rootScope.$stateChangeStart = [];
                        $rootScope.$on("$stateChangeStart",
                            function(event, toState, toParams, fromState, fromParams) {
                                if (fromState.name == "root") {
                                   $state.go('shop')
                               }
                                $rootScope.$stateChangeStart.push({
                                    toState: toState,
                                    toParams: toParams,
                                    fromState: fromState,
                                    fromParams: fromParams
                                });
                            });
                    }
                ]);