我在从 ngroute 迁移到 ui.router 时遇到问题:
使用 ngroute 我有几个 Angular 文件:
模块.js
angular.module('betTogether', ['ngRoute']);
路由.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;
});
}]);
...以及其他 Controller 。一切正常。 现在我想迁移到 ui-router。所以我像这样更改 module.js 和 Route.js :
模块.js
angular.module('betTogether', ['ui.router']);
路由.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
...它适用于每个 Controller 的第一行。
有人可以帮助我吗?
PS:抱歉我的英语不好,希望你能理解。
最佳答案
检查您的 <script>
的顺序导入您的 index.html
。您可能已包含 ui-router
您的 betTogether
之后的模块module 而它应该位于它之前,因为 betTogether
取决于ui.router
.
关于javascript - 从 ngRoute 迁移到 ui.router,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41925186/