论证'控制器'不是一个功能,未定义

时间:2015-02-27 01:42:30

标签: angularjs syntax controller ionic

我一直在研究这个问题,我发现它必须是一些语法错误。由于我是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] Argument' 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)     at ionic.bundle.js:16224     at ionic.bundle.js:15401     在forEach(ionic.bundle.js:8155)     at nodeLinkFn(ionic.bundle.js:15388)     在compositeLinkFn(ionic.bundle.js:14887)     at nodeLinkFn(ionic.bundle.js:15526)     在compositeLinkFn(ionic.bundle.js:14887)

1 个答案:

答案 0 :(得分:6)

您的模块app-praiana需要有权访问app-praiana.controllers模块才能使用其initioController

首先定义控制器模块,然后声明主模块:

angular.module('app-praiana', ['ionic', 'ngCordova', 'app-praiana.controllers'])