当我单击登录按钮但是在标题中继续收到错误消息时,我想调用登录功能.有人可以指出我脚本中的错误吗?
login.js代码如下:
/*global Firebase,angular,console*/ 'use strict'; // Create a new app with the AngularFire module var app = angular.module("runsheetApp"); app.controller("AuthCtrl",function ($scope,$firebaseAuth) { var ref = new Firebase("https://xxxxx.firebaseio.com"); function login() { ref.authWithPassword({ email : "xxxxx",password : "xxxx" },function (error,authData) { if (error) { console.log("Login Failed!",error); } else { console.log("Authenticated successfully with payload:",authData); } }); } });
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.21/angular.min.js"></script>
而login.html的代码也在下面:
<div class="container" style="max-width: 300px"> <form class="form-signin"> <h2 class="form-signin-heading" style="text-align: center">Please Sign In</h2> <input type="text" class="form-control" name="username" ng-model = "username" placeholder="Email Address" required="" autofocus="" /> </br> <input type="password" class="form-control" name="password" ng-model = "password" placeholder="Password" required=""/> </br> <button class="btn btn-lg btn-primary btn-block" type="submit" ng-click="login()">Login</button> </form> </div>
在AngularJS中调用该函数的视图必须在$范围内.
JS
// exposes login function in scope $scope.login = login;
HTML
<div class="container" ng-controller="AuthCtrl" style="max-width: 300px"> <!-- I notice here for include ng-controller to your main div --> <form class="form-signin"> <h2 class="form-signin-heading" style="text-align: center">Please Sign In</h2> <input type="text" class="form-control" name="username" ng-model = "username" placeholder="Email Address" required="" autofocus="" /> </br> <input type="password" class="form-control" name="password" ng-model = "password" placeholder="Password" required=""/> </br> <button class="btn btn-lg btn-primary btn-block" type="submit" ng-click="login()">Login</button> </form>