title: Angular - resolving for multiple controllers in the same view/route/page
body: <p>We are building a big SPA , currently the app is build with <code>widgets/components</code>. each with a template, controller. but many can be nested in the same route.  for example: In the route <code>/users/</code> I can have a <code>`userCtrl</code> and a <code>userTemplate</code>that renders the user stats parts. a <code>graphCtrl</code> and a <code>graphTemplate</code> to render some d3 graphs. a <code>listCtrl</code> and a <code>listTemplate</code> to render a list. all of those widgets should be reusable (with different css and layouts, sometimes with the same ctrl different templates in other pages).  I need to instantiate some  data from a service - Lets say a service that return my user id and more validations. so in the main app routing i define a <code>resolve{myId: function(srvname){return srvname.myId}}</code> for <code>userCtrl</code> route which the <code>when</code> clause of <code>routeProvider</code> routes to.</p>
  
  <p>My problem is that <code>listCtrl</code> doesn't wait for <code>userCtrl</code> (the <code>main</code> page ctrl , which gets the route) to resolve the different promises, and then fails with missing data. </p>
  
  <p>Is there a way to define the same resolve for multiple controllers, that some of them aren't a direct route target but more of (very) big component? Is there a better/smarter way to do this?</p>
  
  <p>I know I can use directive for that. but moving the bussiness logic from <code>listCtrl</code> to a directive looks plain wrong.</p>
  
  <p>I'll be glad for any help and advice</p>