I am having an issue where once the templateUrl is added into the ui-router child state, the application will no longer perform the routing to the state. It works fine when it's just a template.

app.js:

app.config(['$stateProvider', '$locationProvider', '$urlMatcherFactoryProvider', '$urlRouterProvider', function ($stateProvider, $locationProvider, $urlMatcherFactoryProvider, $urlRouterProvider) { $urlMatcherFactoryProvider.caseInsensitive(true); $urlMatcherFactoryProvider.strictMode(false); $urlRouterProvider.otherwise('/page-not-found'); $stateProvider .state('dashboard', { url: '/', views: { 'header': { template: 'header' }, 'nav': { template: 'nav' }, main: { template: 'You are on the homepage' } } }); $locationProvider.html5Mode(true); }]); app.run(['$rootScope', 'userService', '$state', function ($rootScope, user, $state) { $rootScope.$on("$stateChangeError", console.log.bind(console)); if (!user.exists) { $state.go('user.reg'); } }]);

User.states.js:

.config(['$stateProvider', function ($stateProvider) { $stateProvider .state('user', { url: '/users', abstract: true, views: { 'header': {}, 'nav': {}, 'main': { template: '<ui-view/>' } } }) .state('user.reg', { url: '/register', //template: 'This will show fine', templateUrl: '/app/Users/User.login.html' // this will break }); }]);

UPDATE

If I add a ui-sref="user.reg" to my initial pages I can navigate to the state/page fine, with the templateUrl and template . So its just an issue when I try to use state.go('user.reg');