簡體   English   中英

從ngRoute遷移到ui.router

[英]migrating from ngRoute to ui.router

我從ngroute遷移到ui.router時遇到問題:

使用ngroute我有幾個角度文件:

module.js

angular.module('betTogether', ['ngRoute']);

route.js

angular.module('betTogether').config(['$routeProvider',
    function (
        $routeProvider
    ) {
          $routeProvider.
              when('/descriptionBets', {
                  templateUrl: 'descriptionBets',
                  controller: 'descriptionBetsCtrl'
              }).
              when('/normalBets', {
                  templateUrl: 'normal',
                  controller: 'normalBetsCtrl'
              }).
              when('/addBet', {
                  templateUrl: 'addBet',
                  controller: 'addBetCtrl'
              }).
              otherwise({
                  redirectTo: '/descriptionBets'
              });
}]);

normalBets.js

angular.module('betTogether').controller('normalBetsCtrl', [
'$scope','$http',

function($scope,$http){

    $scope.typeBetsImages = [{link: "images/basketball.png", title:"basketball"},
                {link: "images/tenis.png", title: "tenis"},
                {link: "images/volleyball.png", title: "volleyball"},
                {link: "images/football.png", title:"football"}
    ];

    $http.get("/normalBets").success(function(data){
        $scope.normalBets = data;
    });

}]);

...以及其他控制器。 而且一切正常。 現在我想遷移到ui-router。 所以我像這樣更改module.js和route.js:

module.js

angular.module('betTogether', ['ui.router']);

route.js

angular.module('betTogether').config(['$stateProvider', '$urlRouterProvider', function($stateProvider, $urlRouterProvider){
                // For any unmatched url, send to /business
                $urlRouterProvider.otherwise("/descriptionBets")

                $stateProvider
                        .state('descriptionBets', {//State demonstrating Nested views
                            url: "/descriptionBets",
                            templateUrl: "descriptionBets",
                            controller: "descriptionBetsCtrl"
                        })
                        .state('normalBets', {//nested state [products is the nested state of business state]
                            url: "/normalBets",
                            templateUrl: "normal",
                            controller: "normalBetsCtrl"
                        })
                        .state('addBet', {//nested state [services is the nested state of business state]
                            url: "/addBet",
                            templateUrl: "addBet",
                            controller: "addBetCtrl"
                        });

            }]);

它不起作用。 我有錯誤:

Error: [$injector:nomod] http://errors.angularjs.org/1.3.10/$injector/nomod?p0=betTogether angular.min.js:6:417

...是每個控制器的第一行。

有人可以幫我嗎?

PS:對不起,我的英語,希望您能理解。

檢查index.html <script>導入的順序。 可能是您在betTogether模塊之后包括了ui-router模塊,而應該在它之前出現,因為betTogether取決於ui.router

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM