更新
因为我错过了添加它的控制器,它确实改变了属性的值,但是当我点击路由触发器时它没有显示/隐藏我的div。当前的html设置确实在第一次加载时显示/隐藏。我会在这里失踪什么?
我需要帮助理解并找到解决问题的方法。我使用ui-router并获得了两条路由,一条主路由一条路由器。
$stateProvider.state('analyse', {
url: '/analyse/:id',
templateUrl: 'app/components/some/some.html',
controller: 'Analyse',
data: {
customData1: false
}
});
$stateProvider.state('analyse.solution', {
url: '/solution',
views: {
'ui-solution': {
template: 'testing the template',
data: {
customData1: true
}
}
},
controller: 'Analyse'
});
在我的控制器中更新此值
vm.selectSolution = $state.current.data.customData1;
现在点击主路由器analyse
它会更新vm.selectedSolution
,但是点击子状态它什么都不做,值不会改变。我根据该值隐藏/显示两个div。
编辑:我的HTML看起来像
<div ng-controller="Analyse as vmSolution" ui-view="ui-solution" ng-show="vmSolution.selectSolution"></div>
<div ng-controller="Analyse as vmSolution" class="analysis-solution" ng-hide="vmSolution.selectSolution">
为什么,我该怎么做才能改变子状态的值?