0
我在設置我的應用程序的標題以對應應用程序所處的當前狀態時出現問題。我正在使用$ stateprovider並具有抽象父狀態我想從當前的嵌套狀態設置標題。我第一次切換狀態時,標題將切換到正確的標題。但是,當我切換回來時,標題將不再改變。Angular Controller父/子作用域設置父變量到子作用域變量
我stateprovider看起來是這樣的,與「標籤」狀態的狀態下的其他州也嵌套:
$stateProvider.
.state('tab', {
url : "/tab",
abstract : true,
templateUrl : "templates/tabs.html",
controller : function($scope){
$scope.header = $scope.header || {title: 'Default'};
}
})
// Each tab has its own nav history stack:
.state('tab.charts', {
url : '/charts',
views : {
'charts-screen' : {
templateUrl : 'templates/chart.html',
controller : 'ChartController'
}
},
reload: true
})
.state('tab.report-list', {
url : '/reportList',
views : {
'report-list' : {
templateUrl : 'templates/tab-report-list.html',
controller : 'ReportListController'
}
}
})
我想每個嵌套的狀態可以設置標題標題,像所以:
.controller('ChartController', function($scope){
$scope.header.title = 'Chart Title';
}
.controller('ReportListController', function($scope){
$scope.header.title = 'Report Title';
}
當我從tab.charts導航到tab.report列表,標題改變 到正確的標題,「報告標題」,但是,當我瀏覽回標題 仍然是「報告標題」。
什麼是在角度做到這一點的正確方法?我認爲設置狀態的重新加載 字段將確保它重新獲取活動控制器中的$ scope變量 。