参数 'controller' 不是函数,未定义
Argument 'controller' is not a function, got undefined
我一直在研究这个问题,我发现它一定是语法错误。由于我是 Angular 的新手,我已经尝试了很长一段时间来定位错误,但没有成功。
如果有人能帮助我,我将不胜感激,或者,如果是其他地方我做错了:
angular.module('app-praiana', ['ionic', 'ngCordova'])
.run(function ($ionicPlatform) {
$ionicPlatform.ready(function () {
// Hide the accessory bar by default (remove this to show the accessory bar above the keyboard
// for form inputs)
if (window.cordova && window.cordova.plugins.Keyboard) {
cordova.plugins.Keyboard.hideKeyboardAccessoryBar(true);
}
if (window.StatusBar) {
StatusBar.styleDefault();
}
});
})
.config(['$httpProvider', function ($httpProvider) {
$httpProvider.defaults.useXDomain = true;
delete $httpProvider.defaults.headers.common['X-Requested-With'];
}])
.config(function ($stateProvider, $urlRouterProvider) {
$urlRouterProvider.otherwise('/inicio');
$stateProvider.state('inicio-state', {
url: '/inicio',
views: {
'inicio': {
templateUrl: 'templates/home.html',
}
}
})
$stateProvider.state('termos-state', {
url: '/termos',
views: {
'termos': {
templateUrl: 'templates/termos.html'
}
}
})
});
angular.module('app-praiana.controllers', [])
.controller('InicioController', function($scope){
alert(1);
});
编辑:
错误发生在第一眼,就是这样:
错误:[ng:areq] 参数 'InicioController' 不是函数,未定义
http://errors.angularjs.org/1.3.6/ng/areq?p0=InicioController&p1=not%20a%20function%2C%20got%20undefined
在 REGEX_STRING_REGEXP (ionic.bundle.js:7888)
在 assertArg (ionic.bundle.js:9389)
在 assertArgFn (ionic.bundle.js:9399)
在 ionic.bundle.js:16224
在 ionic.bundle.js:15401
在 forEach (ionic.bundle.js:8155)
在 nodeLinkFn (ionic.bundle.js:15388)
在 compositeLinkFn (ionic.bundle.js:14887)
在 nodeLinkFn (ionic.bundle.js:15526)
在 compositeLinkFn (ionic.bundle.js:14887)
您的模块 app-praiana
需要访问 app-praiana.controllers
模块才能使用其 initioController
。
首先定义控制器模块,然后声明你的主模块:
angular.module('app-praiana', ['ionic', 'ngCordova', 'app-praiana.controllers'])
我一直在研究这个问题,我发现它一定是语法错误。由于我是 Angular 的新手,我已经尝试了很长一段时间来定位错误,但没有成功。
如果有人能帮助我,我将不胜感激,或者,如果是其他地方我做错了:
angular.module('app-praiana', ['ionic', 'ngCordova'])
.run(function ($ionicPlatform) {
$ionicPlatform.ready(function () {
// Hide the accessory bar by default (remove this to show the accessory bar above the keyboard
// for form inputs)
if (window.cordova && window.cordova.plugins.Keyboard) {
cordova.plugins.Keyboard.hideKeyboardAccessoryBar(true);
}
if (window.StatusBar) {
StatusBar.styleDefault();
}
});
})
.config(['$httpProvider', function ($httpProvider) {
$httpProvider.defaults.useXDomain = true;
delete $httpProvider.defaults.headers.common['X-Requested-With'];
}])
.config(function ($stateProvider, $urlRouterProvider) {
$urlRouterProvider.otherwise('/inicio');
$stateProvider.state('inicio-state', {
url: '/inicio',
views: {
'inicio': {
templateUrl: 'templates/home.html',
}
}
})
$stateProvider.state('termos-state', {
url: '/termos',
views: {
'termos': {
templateUrl: 'templates/termos.html'
}
}
})
});
angular.module('app-praiana.controllers', [])
.controller('InicioController', function($scope){
alert(1);
});
编辑:
错误发生在第一眼,就是这样:
错误:[ng:areq] 参数 'InicioController' 不是函数,未定义 http://errors.angularjs.org/1.3.6/ng/areq?p0=InicioController&p1=not%20a%20function%2C%20got%20undefined 在 REGEX_STRING_REGEXP (ionic.bundle.js:7888) 在 assertArg (ionic.bundle.js:9389) 在 assertArgFn (ionic.bundle.js:9399) 在 ionic.bundle.js:16224 在 ionic.bundle.js:15401 在 forEach (ionic.bundle.js:8155) 在 nodeLinkFn (ionic.bundle.js:15388) 在 compositeLinkFn (ionic.bundle.js:14887) 在 nodeLinkFn (ionic.bundle.js:15526) 在 compositeLinkFn (ionic.bundle.js:14887)
您的模块 app-praiana
需要访问 app-praiana.controllers
模块才能使用其 initioController
。
首先定义控制器模块,然后声明你的主模块:
angular.module('app-praiana', ['ionic', 'ngCordova', 'app-praiana.controllers'])