模块中的控制器未定义

时间:2016-05-31 07:50:13

标签: angularjs cordova

我只是使用棱角分明的新手。这次我使用来自github的免费开源代码Authenticate.me-client-cordova-ionic

处理登录表单

在app.js中,定义了一些用于登录应用程序的控制器。

angular.module('AuthenticateMe', [
  'ionic',
  'controllers.main',
  'controllers.auth',
  'controllers.profile',
  'controllers.users',
  'controllers.users.profile',
  'services.common.constants',
  'services.common.auth',
  'components.http-auth-interceptor',
  'ngCordova.plugins.network'
])

那里的一切都很好。

但是,当我在那里定义新控制器时,该应用程序只是空白。

angular.module('AuthenticateMe', [
  'ionic',
  'controllers.main',
  'controllers.auth',
  'controllers.profile',
  'controllers.users',
  'controllers.mynewcontrollerhere', //This is my new controller
  'controllers.users.profile',
  'services.common.constants',
  'services.common.auth',
  'components.http-auth-interceptor',
  'ngCordova.plugins.network'
])

这是mynewcontroller

  angular.module('controllers.mynewcontroller', ['ngCordova.plugins.camera'])

  .controller('MynewCtrl', [
    '$cordovaCamera',
    '$ionicActionSheet',
    '$ionicModal',
    '$ionicLoading',
    '$ionicPopup',
    '$timeout',
    '$scope',
    '$state',
    '$stateParams',
    'Constants',
    'AuthService',

注意:我将新控制器放在新目录 controllers / mynewcontroller / main.js 中(main.js是新控制器的名称)

问题是,为什么我的控制器无法访问并使应用程序无法正常工作?

拜托,任何人都有帮助。提前谢谢了。

1 个答案:

答案 0 :(得分:1)

即使您已将脚本包含在主应用程序中,为了能够访问控制器,您还需要将其包含在模板/ html文件中。

关于如何在模板中包含控制器...如果您将控制器声明为MynewCtrl,那么在模板中您应该将控制器定义为:

<div ng-controller="MynewCtrl">
    <!-- body here -->
</div>