title: Initialize data only once with ui-router and md-tabs
body: <p>I am using <a href="https://angular-ui.github.io/ui-router/">ui-router</a> with <a href="https://material.angularjs.org/#/demo/material.components.tabs">Material Design's tabs</a> in order to load tab content dynamically in an <a href="https://angular-ui.github.io/ng-grid/">ngGrid</a>. </p>
  
  <p>Every view has its separate controller with a service which requests the data. Any ideas on how I can configure ui-router to initialize the data only once <strong>for each tab</strong>?</p>
  
  <p>Currently, every time I click on a tab a new request is being fired and ngGrid is reinitialized. </p>
  
  <p>ng-router config file, just in case: </p>
  
  <pre><code>    $stateProvider
          .state('tab1', {
              url: '/tab1',
              views: { 
                  'tab1': {
                      templateUrl: 'tab1.html',
                      controller: 'tab1Controller'
                  }
              }
          })
          .state('tab2', {
              url: '/tab2',
              views: { 
                  'tab2': {
                      templateUrl: 'tab2.html',
                      controller: 'tab2Controller'
                  }
              }
          })
          .state('tab3', {
              url: '/tab3',
              views: { 
                  'tab3': {
                      templateUrl: 'tab3.html',
                      controller: 'tab3Controller'
                  }
              }
          });
  </code></pre>