Hola, otra vez yo.
Tengo un servicio que aun, no realiza una peticion $http
(para poder recuperar un promise de una petición asincrona).
.factory('UserSearch', [function UserSearchFactory(){
var service = {};
service.searchTypes = [
{
type: "all",
text: "Todos"
},
{
type: "email",
text: "Correo"
},
];
service.getSearchTypes = function(){
return this.searchTypes;
};
return service;
}]);
Sin embargo si yo requiero utilizar los datos del resultado, obviamente estaran indefinidos.
.controller('SearchUserController',['UserSearch', '$scope', function(UserSearch, $scope){
var controller = this;
$scope.searchTypes = UserSearch.getSearchTypes();
$scope.selectedsearch = $scope.searchTypes; // <<< Este obviamente será undefined
}]);
¿Como puedo crear un tipo de promise para poder resolver esto, y que no tome los valores una vez que el servicio le indique que ya puede hacerlo?
Algo como:
$scope.searchTypes.onSuccessEvent(function(){
$scope.selectedsearch = $scope.searchType.obtainedValue;
});