我有一系列“动作”对象。每个对象都有一个状态:“掌握”或“新”。
在一个导航标签上,我显示“新”操作:
<div ng-repeat="x in main.actions | filter: {status: '!mastered'} >
<div class="btn-group">
<label ng-model="x.status" uib-btn-radio="'new'"><label>
<label ng-model="x.status" uib-btn-radio="'mastered'"></label>
</div>
</div>
在单独的导航标签上,我显示了掌握的操作。我的代码与ng-repeat中包含的过滤器除外。
通过单击这些单选按钮,可以将操作的状态从“新”更改为“已掌握”。一切都按预期工作,但是,当我更改动作的状态时,整个SPA返回到它的主页面!
为什么?我需要做些什么来防止这种情况发生?
答案 0 :(得分:0)
您可以合并,这样您就不必为每个状态使用不同的标签。尝试这样的事情。
代码:
<div ng-repeat="x in main.actions | filter: {status: stat} "></div>
<div class="btn-group">
<label ng-model="x.status" uib-btn-radio="'new'" ng-click="stat = 'new'"><label>
<label ng-model="x.status" uib-btn-radio="'mastered'" ng-click="stat = 'mastered'"></label>
</div>
现在应根据您点击的按钮过滤ng-repeat。