2016-11-07 37 views
0

所以我得到這個錯誤,我一直在看其他問題,但沒有任何工作。參數不是一個nnnunction,在控制器上沒有定義

這裏就是我宣佈我的模塊:

(function() { 
    'use strict'; 
    var app = angular.module('PaymentManagementApp', ['ngRoute', 'ngStorage', 'ngMessages', 'ngMaterial']); 
    app.config(function ($routeProvider) { 

     $routeProvider 

     .when('/login', { 
      templateUrl: 'app/components/login/login.html', 
      controller: 'LoginController' 
     }) 

})(); 

這是控制器中,我遇到了錯誤「的LoginController不aNaNunction,得到了未定義

(function() { 
    'use strict'; 
    angular 
     .module('PaymentManagementApp') 
     .controller('LoginController', function ($scope, $location) { 

      $scope.processLogin = processLogin; 

      function processLogin() { 
       return; 
      }; 


     }) 
})(); 

而html

<div id="login" class="image-content-layout" layout="row" layout-sm="column"> 

    <div class="background" style="background-image: url('assets/img/login.png');" flex></div> 

    <div class="content" flex-md="70" flex-gt-md="40"> 
     <div class="wrapper"> 

      <h1 class="md-display-2 title">Iniciar sesión</h1> 

      <form name="login"> 

       <md-input-container> 
        <label>Email</label> 
        <input required name="email" type="email" ng-model="email"> 

        <div ng-messages="login.email.$error" ng-if="login.email.$touched"> 
         <div ng-message="required">Debes ingresar tu email</div> 
         <div ng-message="email">El email no es válido</div> 
        </div> 
       </md-input-container> 

       <md-input-container> 
        <label>Contraseña</label> 
        <input required name="password" type="password" ng-model="password"> 

        <div ng-messages="login.password.$error" ng-if="login.password.$touched"> 
         <div ng-message="required">Debe ingresar una contraseña</div> 
        </div> 
       </md-input-container> 


       <p class="md-body-1 form-error">{{ formError }}</p> 


       <div class="md-actions" layout="row"> 
        <span flex></span> 
        <md-button href="#/signup" class="signup md-raised">Registarse</md-button> 
        <md-button type="submit" ng-click="processLogin()" class="md-primary md-raised login">Iniciar sesión</md-button> 
       </div> 
      </form> 

      <div class="full-page-overlay" http-loader> 
       <div layout="row" layout-sm="column" layout-align="space-around"> 
        <md-progress-circular md-mode="indeterminate"></md-progress-circular> 
       </div> 
      </div> 

     </div> 
    </div> 
</div> 

我該怎麼辦才能修復它?

+1

你有沒有包括 'LoginController.js',而頁面加載? –

+0

@PitchiahNatarajan謝謝!我覺得自己像一個完全白癡 – moondaisy

回答

-1

您正在定義angular.module('PaymentManagementApp')兩次。

更改此:

angular 
     .module('PaymentManagementApp') 
     .controller('LoginController', function ($scope, $location) {...} 

到:

app.controller('LoginController', function ($scope, $location) {...} 
+0

.module('PaymentManagementApp')是一個getter,它沒有定義一個模塊 – estus

相關問題