I believe AngularUI Router is what you are looking for. Most UI-Router capabilities have the ability to set states and views. Follow the link I provided and look at the Nested States & Views section.
This Plunker example includes an AngularUI Router to achieve the similar functionality you are looking for.
[EDIT]
This layout, consisting of nested views, is what is used for AngularUI Router to:

So, TabsTemplate will dynamically display the first level of tabs (any number).
TabTemplate can be a template without any dynamic content, since there are always Home and Office tabs.
OfficeTemplate and HomeTemplate are again templates that are dynamically populated based on the choice of the current person.
PrimosK
source share