gpt4 book ai didi

angularjs - Angular Controller构造函数:什么时候被调用?

转载 作者:行者123 更新时间:2023-12-02 05:59:21 25 4
gpt4 key购买 nike

我正在学习angular,并有一个示例登录代码。此代码具有一个构造函数,该构造函数在调用时清除凭据。我的问题是:何时调用构造函数?是代码初始化一次还是每次调用 Controller 上的方法一次?我可能会将其与后端开发框架与DI的工作方式混淆,后者仅在初始化时为 Controller 运行一次构造函数。

作为后续问题,我需要注销函数还是构造函数足够好?

这是我目前正在查看的代码:

(function () {
'use strict';

angular
.module('app')
.controller('LoginController', LoginController);

LoginController.$inject = ['$rootScope', '$location', 'AuthenticationService', 'FlashService'];
function LoginController($rootScope, $location, AuthenticationService, FlashService) {
var vm = this;

vm.login = login;

(function initController() {
// reset login status
AuthenticationService.ClearCredentials();
})();

function login() {
vm.dataLoading = true;
var promise = AuthenticationService.Login(vm.username, vm.password)
.then(function(userInfo){

AuthenticationService.SetCredentials(userInfo);
$location.path('/');

}, function(failedReason) {
FlashService.Error(failedReason);
vm.dataLoading = false;
});
};

function logout() {
AuthenticationService.ClearCredentials();
$location.path('/login');

};
}

})();
  • 该代码基于Jason Watmore的博客http://jasonwatmore.com/post/2015/03/10/AngularJS-User-Registration-and-Login-Example.aspx
  • 我曾经在这里阅读过文档:https://docs.angularjs.org/guide/controller
  • 最佳答案

    每次显示附加到它的 View 或指令时都会调用它。

    关于angularjs - Angular Controller构造函数:什么时候被调用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33042153/

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