Use case
I have an application that uses both, angular-material (v1.0.0) and ui-router (v0.2.15) and try to have a parent state that has child states which are shown within md-tabs/md-tab.
Problem
I get it working but without the initial tab to be loaded. Only after clicking on the tabs, their state gets loaded.
Code
angular.module('demoApp', ['ui.router', 'ngMaterial'])
.config(function ($stateProvider, $urlRouterProvider) {
$stateProvider.state('tabs', {
url: '/tabs',
template: '<div>' +
' <h1>Tabs View</h1>' +
' <md-tabs>' +
' <md-tab label="Foo" ui-sref="tabs.foo">' +
' </md-tab>' +
' <md-tab label="Bar" ui-sref="tabs.bar">' +
' </md-tab>' +
' </md-tabs>' +
' <md-content ui-view></md-content>' +
'</div>'
});
$stateProvider.state('tabs.foo', {
url: '/tabs/foo',
template: 'Hello from Foo'
});
$stateProvider.state('tabs.bar', {
url: '/tabs/bar',
template: 'Hello from Bar'
});
$urlRouterProvider.when('/tabs', '/tabs/foo');
$urlRouterProvider.otherwise('/tabs');
})
;
<!DOCTYPE html>
<html ng-app="demoApp">
<head>
<link rel="stylesheet" href="https://rawgit.com/angular/bower-material/v1.0.0/angular-material.css">
<script src="//rawgit.com/angular/bower-angular/master/angular.js"></script>
<script src="//rawgit.com/angular/bower-angular-aria/master/angular-aria.js"></script>
<script src="//rawgit.com/angular/bower-angular-animate/master/angular-animate.js"></script>
<script src="//rawgit.com/angular/bower-material/v1.0.0/angular-material.js"></script>
<script src="//rawgit.com/angular-ui/ui-router/master/release/angular-ui-router.js"></script>
<meta charset="utf-8">
<title>Example</title>
</head>
<body>
<div ui-view></div>
</body>
</html>