2016-08-30 50 views
0

登錄頁面後,我去主頁,我想直接調用默認的孩子在主頁獲取默認的第一個孩子路由angularjs

這個配置在app.js

.config(($stateProvider, $urlRouterProvider)=> { 
    "ngInject"; 
    $urlRouterProvider.otherwise('/'); 
    $stateProvider 
     .state('login', { 
     url: '/', 
     component: 'login' 
     }) 
     .state('home', { 
     url: '/home', 
     component: 'home' 
     }) 
     .state('home.listTemplates', { 
     url: '/listTemplates', 
     component: 'listTemplates' 
     }); 
    }) 

我想那d當我打開主頁listTemplates將直接打開

它的工作原理,但只是當我完成URL手動

這是我家conttroller

class HomeController { 
    constructor($state) { 
    this.name = 'home'; 
    console.log('home controller'); 

    } 
} 


HomeController.$inject = ['$state']; 
export default HomeController; 

home.component

import template from './home.html' 
import controller from './home.controller'; 
let HomeComponent = { 
    restrict : 'E', 
    template, 
    controller 
}; 
export default HomeComponent; 

home.js

import HomeComponent from './home.component'; 
import ListTemplatesComponent from 'listTemplates/listTemplates.component'; 
import angular from 'angular'; 
import uiRouter from 'angular-ui-router'; 

angular.module('home',[ 
    uiRouter 
]) 
    .config(($stateProvider, $urlRouterProvider)=> { 
    "ngInject"; 

    }) 
.component('home',HomeComponent) 
.component('listTemplates',ListTemplatesComponent); 

感謝幫助

回答

0

嘗試改變

$urlRouterProvider.otherwise('/'); 

for

$urlRouterProvider.when('/', {redirectTo: '/listTemplates'}).otherwise('/');