angularjs - UI-router won't resolve promise -
i'm not quite sure i'm doing wrong, seems profile
doesn't resolve time mainctrl
. user
does, resolve. i, perhaps not fetching profile info in auth
service?
router:
angular.module('app') .config(function ($stateprovide) { $stateprovider .state('main', { url: '/main', templateurl: 'app/main/main', controller: 'mainctrl', resolve: { user: function (auth) { homecoming auth.getuser(); }, profile: function (user) { homecoming auth.getprofile(); } } }); });
controller:
angular.module('app') .controller('mainctrl', function ($scope, user, profile) { $scope.user = user; $scope.profile = profile; <- doesnt resolve });
auth service:
angular.module('app') .factory('auth', function ($firebasesimplelogin, $firebase, fburl) { var ref = new firebase(fburl); var auth = $firebasesimplelogin(ref); var auth = { user: {}, getuser: function () { homecoming auth.$getcurrentuser(); }, getprofile: function(uid) { homecoming $firebase(ref.child('users').child(uid)).$asobject(); } }; homecoming auth; });
something like
auth.$getcurrentuser()
returns promise need
.then(function(user) {
event before callback complete
in case may resolve on then
, like
auth.getuser().then(function(user){ homecoming user; });
also $asobject()
needs $loaded()
it's promise
var obj = $firebase(ref).$asobject(); obj.$loaded() .then(function(data) {})
angularjs angular-ui-router angularfire
No comments:
Post a Comment