2017-04-07 46 views
0

這是一個小時我想了解爲什麼我沒有在AngularJS項目的控制器中定義的函數被調用。在控制器中未調用AngularJS函數

app.js

angular.module('SupplierPortal', ['ngRoute', 'ngResource']); 

userLoginController.js

angular.module('SupplierPortal').controller('UserLoginController', function($scope, $location) { 
    $scope.text = "Hi"; 

    $scope.login = function() { 
    console.log('It doesn't show this'); 
    $location.path(/admin); 
    } 
}); 

的login.html

<div class="container"> 
<div class="row"> 
    <div class="col-sm-6 col-md-4 col-md-offset-4"> 
     <div class="account-wall"> 
      <img class="profile-img" src="https://lh5.googleusercontent.com/-b0-k99FZlyE/AAAAAAAAAAI/AAAAAAAAAAA/eu7opA4byxI/photo.jpg?sz=120" 
       alt=""> 
      <form class="form-signin"> 
       <input type="text" class="form-control" placeholder="Username" required autofocus> 
       <input type="password" class="form-control" placeholder="Password" required> 
       <input class="btn btn-lg btn-primary btn-block" type="submit" ng-click="login()" value="Login"> 
      </form> 
     </div> 
    </div> 
</div> 

routes.js

angular.module('SupplierPortal').config(function($routeProvider) { 
$routeProvider 
.when("/", { 
    templateUrl: "assets/templates/users/login.html", 
    controller: "UserLoginController" 
}) 
.when("/admin/", { 
    templateUrl: "assets/templates/users/index_admin.html" 
}) 
.otherwise({ 
    redirectTo:'/' 
}); 

});

的index.html

<!DOCTYPE html> 
<html ng-app="SupplierPortal"> 
<head> 
<meta charset="utf-8"> 
<title>Login</title> 
<link rel="stylesheet" href="assets/styles/style.css"> 
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css"> 
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap-theme.min.css"> 
</head> 
<body> 

<div ng-view class="container"></div> 

<!-- SCRIPTS --> 

<!-- Vendor --> 
<script src="assets/javascript/vendor/angular.min.js"></script> 
<script src="assets/javascript/vendor/angular-route.min.js"></script> 
<script src="assets/javascript/vendor/angular-resource.min.js"></script> 
<script src="assets/javascript/vendor/jquery-3.2.0.min.js"></script> 
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script> 

<!-- App --> 
<script src="assets/javascript/app.js"></script> 
<script src="assets/javascript/routes.js"></script> 

<!-- Controllers --> 
<script src="assets/javascript/controllers/users/userLoginController.js"></script> 

<!-- Services --> 
<script src="assets/javascript/services/user.js"></script> 

它不會顯示在控制檯中的文本,當然它不會進入/管理/路徑。

感謝大家會盡力幫助我!

+0

對不起,在console.log()中的消息,我寫它只是爲了告訴你點,它不是真正的消息,所以沒有關閉字符串以登錄控制檯的問題。「 – Luca

+0

控制檯中的任何錯誤?還有什麼?$ location.path(」/ admin「)中的引號? – emed

回答

0

解決以下行:

console.log('It doesn't show this'); 

的字符串在句子中被封閉,「'」,因爲你用‘好好嘗試一下’。在「doens't」字上使用「或不使用」

相關問題