12

Thanks to this answer AngularJS app.run() documentation? i can see the order in which modules are ran by Angular, my question is:

if I have:

app.config(function () {
    $routeProvider.when('/', {
        ....
        resolve: {
            // something to resolve
        }
    });
});

app.run(function () {
    // something to run
});

Will run() be executed before the routeProvider resolve:{} is resolved?

1
  • 2
    someone playing with -1 button like a kid Commented Jun 17, 2014 at 15:07

1 Answer 1

28

At least in my experiments, yes the resolve is run after app.run.

In this jsfiddle you can see the calling order I got was:

  1. app config
  2. app run
  3. directive setup
  4. directive compile
  5. app controller
  6. directive link
  7. ** Data resolve called **
  8. new route's controller

As you can see in the fiddle, I checked this by using a console.log function as the value of a property of the object handed to resolve:

resolve: {
            data: function() {
              console.log('Data resolve called');
            }
         }

You can use this same approach in your code to check when routeProvider begins checking the dependencies.

Sign up to request clarification or add additional context in comments.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.