我有多个控制器文件,其中我试图在控制器被触发后立即从工厂加载结果。我正在加载用户信息。目前,当页面加载时,它只显示当我点击刷新所有信息显示时。
如何解决此问题以消除对刷新按钮的需求?
这是我在控制器主体中的代码:
var currentUser = Parse.User.current();
if (currentUser) {
// do stuff with the user
$scope.tempUserObject = UserDetails.overallDetails();
} else {
// show the signup or login page
$scope.logout();
}
答案 0 :(得分:0)
你只返回工厂的承诺。 e.g:
<强>控制器强>
var currentUser = Parse.User.current();
if (currentUser) {
// do stuff with the user
$scope.tempUserObject = UserDetails.overallDetails().success(function(response){
console.log(response);
}).error(function(error){
console.log("Error = "+error);
});
} else {
// show the signup or login page
$scope.logout();
}
<强>工厂强>
app.factory('UserDetails', ['$http', function($http){
return {
overallDetails : overallDetailsFun
}
function overallDetailsFun(){
return {
$http.get("127.0.0.1/api/details");
}
}
}]);