我是AngularJS的新手,我正在尝试在我的代码中使用$ routeParams,在此处搜索之前的答案我确保已经添加了' $ routeParams'作为我的阵列注入和功能的一部分,我不使用ui-router模块。但是当我尝试记录它时,我仍然得到一个未定义的。
My Angular App如下:
var RAFITOAPP = RAFITOAPP || {}
RAFITOAPP.app = angular.module('app', [
'ngRoute'
]).config(['$routeProvider', function($routeProvider) {
$routeProvider.
when("/line/:userAccountId", {templateUrl: "assets/partials/line.html", controller: "LineController"}).
when("/floormap", {templateUrl: "assets/partials/floormap.html", controller: "MapController"}).
when("/report", {templateUrl: "assets/partials/reports.html", controller: "ReportController"}).
when("/addNew", {templateUrl: "assets/partials/add_new.html", controller: "addNewController"}).
when("/profile", {templateUrl: "assets/partials/account.html", controller: "accountSettingsController"}).
otherwise({redirectTo: '/line'});
}]);
我的控制器如下:
RAFITOAPP.app.
controller('LineController', ['$scope','$rootScope','$routeParams', function($rootScope, $scope, $location, $routeParams) {
$scope.$on('$viewContentLoaded', function() {
console.log($routeParams);
change('line');
if(control != 1){
setTimeout(function() {
script1fire();
} , 100);
control = 1;
}
})
}]);
请告知我错过了什么?任何帮助将非常感激。如果您希望看到导致问题的HTML页面,那么
答案 0 :(得分:6)
您的数组依赖项和函数参数不相同。它应该是'['$rootScope', '$scope', '$location', '$routeParams', function($rootScope, $scope, $location, $routeParams)'
而不是'['$scope','$rootScope','$routeParams', function($rootScope, $scope, $location, $routeParams)'
RAFITOAPP.app
.controller('LineController', ['$rootScope', '$scope', '$location', '$routeParams',
function($rootScope, $scope, $location, $routeParams) {
$scope.$on('$viewContentLoaded', function() {
console.log($routeParams);
change('line');
if (control != 1) {
setTimeout(function() {
script1fire();
}, 100);
control = 1;
}
})
}
]);