gpt4 book ai didi

javascript - 如何在angular js中更改 Controller 的 View ?

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:14:17 25 4
gpt4 key购买 nike

我是 Angular js 的新手,正在尝试使用 ng-viewngRoute 指令。

我有一个 loginPage.html,其中的登录按钮代码如下所示

<button class="button button-block" ng-click="login()">Log In</button> 

单击按钮时,将执行 loginController 中的登录功能,我的 Controller 如下所示:

var App = angular.module('App', ['ngRoute']);

App.config(['$routeProvider',
function($routeProvider) {
$routeProvider.
when('/', {
templateUrl: 'loginPage.html',
controller: 'loginController'
}).
when('/home', {
templateUrl: 'homePage.html',
controller: 'homeController'
});
}]);

App.controller('loginController', ['$scope', '$http', '$location', function($scope, $http) {
console.log("Hello from login controller");


$scope.login = function() {
//console.log($scope.user);
$http.post('/login', $scope.user).success(function(response) {
if(response.status == "true")
//if the response is true i want to go to homepage.html.

else
$scope.error="Invalid login! Please try again";
$scope.user.email="";
$scope.user.password="";
});
};

}]);

如果 response.status==true 那么我想将 View 更改为 /home。有人可以告诉我该怎么做吗?

谢谢。

最佳答案

if(response.status == "true")
$location.path("/home");

不要忘记将 $location 添加到您的 Controller 参数中,如下所示:

['$scope', '$http', '$location', function($scope, $http, $location)...

此外,将您的 else 语句括在方括号中,否则只有第一行在语句中:

else {
$scope.error="Invalid login! Please try again";
$scope.user.email="";
$scope.user.password="";
}

关于javascript - 如何在angular js中更改 Controller 的 View ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36280414/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com