javascript - How to asynchronously update AngularJS state using value inside of Promise -
how can access returned value then() in javascript?
i have following function:
function getresult(){ var promise = _myservice.getage(); var getresultpromise = promise.then(function(age){ return age; }) return getresultpromise; //how age (value) here? *see image* } or how access value in $$state object below?
how this:
//the simple solution, how use promise: let _myservice = { getage: function() { return new promise(function(resolve, reject) { settimeout(function() { resolve(3) }, 500); }) } }; function getresult() { _myservice.getage().then(function(age) { console.log(age); }); } getresult(); //or, maybe closer op's intended implementation, put value in outer state: let outerstate = { age: 0 }; settimeout(function() { console.log(outerstate) }, 450); let _myservice2 = { getage: function() { return new promise(function(resolve, reject) { settimeout(function() { resolve(8) }, 750); }) } }; function addagetoouterstate() { pstate = new promise(function(resolve, reject) { _myservice2.getage().then(function(newage) { outerstate.age = newage; resolve(outerstate); }); }); pstate.then(function() { console.log(outerstate); }); return pstate; } addagetoouterstate() //for fun .then(function(outer) { console.log(outer); //state still here }); 
Comments
Post a Comment