;
(function () {
'use strict';
angular
.module('t.app.controller', [])
.controller('AppController', AppController);
AppController.$inject = ['$state', '$ionicSideMenuDelegate', 'AuthenticationServiceConstant', 'AuthenticationService'];
/** @ngInject */
function AppController($state, $ionicSideMenuDelegate, AuthenticationServiceConstant, AuthenticationService) {
// jshint validthis: true
var vm = this;
vm.$state = $state;
vm.accessLevels = AuthenticationServiceConstant.accessLevels;
vm.loggingOut = false;
vm.doLogout = doLogout;
///////////////////////
function doLogout() {
vm.loggingOut = true;
AuthenticationService
.logout()
.then(
function (data) {
$ionicSideMenuDelegate.toggleLeft();
vm.$state.go('app.login');
}
)
.finally(
function () {
vm.loggingOut = false;
}
);
}
};
})();
3 个解决方案
#1
var vm = this;
显然 vm 是入口处调用 AppController 的对象
由于 this 总是指向调用者,所以在多重嵌套的调用中,你就不知道初始的调用者了
所以先保存起来,就不会搞错了
显然 vm 是入口处调用 AppController 的对象
由于 this 总是指向调用者,所以在多重嵌套的调用中,你就不知道初始的调用者了
所以先保存起来,就不会搞错了
#2
var vm = this;
vm 就是一个局部变量
不清楚 this ,可以搜索 js this
vm 就是一个局部变量
不清楚 this ,可以搜索 js this
#3
vm代表的是 view modal 视图模型
#1
var vm = this;
显然 vm 是入口处调用 AppController 的对象
由于 this 总是指向调用者,所以在多重嵌套的调用中,你就不知道初始的调用者了
所以先保存起来,就不会搞错了
显然 vm 是入口处调用 AppController 的对象
由于 this 总是指向调用者,所以在多重嵌套的调用中,你就不知道初始的调用者了
所以先保存起来,就不会搞错了
#2
var vm = this;
vm 就是一个局部变量
不清楚 this ,可以搜索 js this
vm 就是一个局部变量
不清楚 this ,可以搜索 js this
#3
vm代表的是 view modal 视图模型