2016-12-17 93 views
0

我有國國有>main.header.sidemenu.tabs.profile如何使用ui-sref在Angular Js中將位置從一個狀態更改爲另一個狀態?

.state('main', { 
       url: '/', 
       template: '<div ui-view=""></div>' 
      }) 
.state('main.header', { 
       url: 'header', 
       templateUrl: 'modules/core/views/header.html' 
      }) 

.state('main.header.sidemenu', { 
       url: '/sidemenu', 
       templateUrl: 'modules/admin/views/adminsidemenu.html' 
      }) 
.state('main.header.sidemenu.businesslist', { 
       url: '^/business/businesslist', 
       templateUrl:'modules/business/views/business.list.view.html', 
     }) 
    .state('main.header.sidemenu.tabs', { 
       url: '', 
       templateUrl:'modules/business/views/tabs.business.view.html', 
      }) 
.state('main.header.sidemenu.tabs.profile', { 
       url: '^/business/profile', 
       templateUrl:'modules/business/views/tabs.business.view.html', 
      }) 

我的HTML代碼 - >模板

<li> 
    <a href="javascript:void(0)" 
    ui-sref="main.header.sidemenu.businesslist">XXXXX</a> 
</li> 

然後拋出錯誤無法解析「branchUrl 'from state - > main.header.sidemenu.tabs當我點擊錨

如何解決這個問題。 你能幫我解決這個問題嗎?

+1

你可以添加你的'狀態'配置嗎? –

回答

0

當您尚未定義branchUrl狀態時會發生此錯誤。請檢查您的state配置,並確保branchUrl應該在那裏。

0

這種錯誤通常意味着(js)代碼的某些部分未加載。 ui-sref內部的狀態丟失。你並不需要指定父,美國在這樣一個面向文檔的工作方式,而不是指定母公司:主,你可以只改變狀態main.header

.config(function($stateProvider, $urlRouterProvider){ 
    $urlRouterProvider.otherwise("/main.html"); 

$stateProvider.state('app', { 
    abstract: true, 
    templateUrl: "url" 
}); 
$stateProvider.state('main', { 
    url: '/main', 
    templateUrl: "url1" 
}); 
$stateProvider.state('main.header', { 
    url: '/main/header', 
    templateUrl: "url2" 
}); 

$stateProvider.state('main.header.sidemenu', { 
    url: "/main/header/sidemenu", 
    templateUrl: "url 3" 
}); 
$stateProvider.state('main.header.sidemenu.businesslist', { 
    url: "/main/header/sidemenu/businesslist", 
    templateUrl: "url 4" 
}); 

你需要定義深層嵌套所有的州。希望它能幫助你

相關問題