angularjs - Errors is not printed out on resolve, ui-router -


let's have in module:

resolve: {         user: function(userloader){           return new userloader($stateparams.userid);         }       } controller.. 

as can see, i've not injected $stateparams, hence fail load controller , view. why console not giving errors on resolve everywhere else? can pain debug if have logic in resolve. possible "turn on" console on resolve somehow?

from documentation :

$statechangeerror - fired when error occurs during transition. it's important note if have errors in resolve functions (javascript errors, non-existent services, etc) not throw traditionally. must listen $statechangeerror event catch errors. use event.preventdefault() prevent $urlrouter reverting url previous valid location (in case of url navigation).

you must listen on '$statechangeerror' event

$rootscope.$on('$statechangeerror',  function(event, tostate, toparams, fromstate, fromparams, error){  // error occured, $log.error(error)  }) 

if want know more ui-router event, check api here


Comments

Popular posts from this blog

php - Invalid Cofiguration - yii\base\InvalidConfigException - Yii2 -

How to show in django cms breadcrumbs full path? -

ruby on rails - npm error: tunneling socket could not be established, cause=connect ETIMEDOUT -