Ok, I'm completely dumbfounded by this. (and I might be overlooking something obvious but...)
I have 2 consecutive calls to console.log. There isn't anything else between them
console.log($state);
console.log($state.current);
and here's an image of the produced results
Why do the 2 produce different "current" objects? How can this happen?
Context:
Those calls are made inside an ajax call while resolving a route dependencies. If you need more code or context let me know.
Confirmed the same issue in Chrome and Firefox
Ajax call and wrapper function (no modifications whatsoever)
normaCtrl.publicNorma = ['$http', '$state', '$stateParams', 'baseUrl', function ($http, $state, $stateParams, baseUrl)
{
var id = $stateParams.id;
return $http.get(baseUrl + "api/public/norma/" + id).then(
function (response) {
console.log($state);
console.log($state.current);
console.log($state.current.title);
return response.data;
}
);
}];
Possible related questions
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…