当ng模型更改时,形成引用旧内存的单选按钮-中断ng检查
Form radio buttons referencing old memory when ng-model is changed - breaks ng-check
角度1.*
我有:
<div class="filter-column">
<div class="filter-title">Market</div>
<div class="bottom-line"></div>
<div class="overflow-container">
<input type="radio" value="all" name="marketRadio"
ng-checked="true" class="resetAll" ng-model="filter.markets"
ng-change="radioMap('market')" checked>All
<div ng-repeat="choice in markets| orderBy: 'name'">
<input type="radio" value="{{choice.name}}" name="marketRadio"
ng-change="radioMap('market')" ng-model="filter.markets" >
{{choice.description}}
</div>
</div>
在控制器中我有:
var ppvFilter = {
regions: [],
markets: [],
dealers: []
};
$scope.$watchCollection(function() {
return ppvFilter;
},
function(newValue) {
$scope.regions = newValue.regions;
$scope.markets = newValue.markets;
$scope.dealers = newValue.dealers;
});
当我用ppvFilter.markets.length = 0; ppvFilter.markets = ppvFilter.markets.concat(['a', 'b', 'c'])
以程序方式刷新单选按钮列表(而不是页面刷新(时,单选按钮选项的列表会在gui中更新。但是,ng-checked="true"
不再适用于all
,并且在列表更新后将取消选中。
我怀疑这是因为有角度的形式引用了旧的记忆,尽管它显示了新的单选按钮列表。
从ngChecked:的角度文档中注意,此指令不应与ngModel一起使用,因为这可能会导致意外行为
我想明白了。。。。默认项目必须在ng重复中。ng-check
在现实生活中用处不大。
参考:
使用ng repeat 时默认选中单选按钮
相关文章:
- ng映射方向备选方案
- AngularJS UI路由器不能像ng路由器那样工作
- 角度:在ng重复上切换图像
- 正在使用$location.path(.)路由ng视图
- AngularJS:ng之后,重复$scope值未按预期更新
- ng打开空字符串
- 我应该使用Ng提交还是点击表格
- ng init中的表达式无法使用ng repeat
- ng更改事件不适用于Dropdown
- ng视图外的链接重定向到ng视图内的页面
- ng应用程序使脚本无限运行
- 角度的项目列表 ng 重复,ng 单击显示全宽描述
- ng隐藏和ng显示无法正常工作
- 从ng模板访问作用域
- 防止ng重复中的重复值(AngularJS)
- 从键值结构中获取数据,并将其与AngularJS中ng重复的值进行比较
- AngularJs列表ng单击以选择选项转换
- 如何使用AngularJs禁用ng选项中的选项
- 更改 ng 视图内容后,不会释放保留的内存
- 当ng模型更改时,形成引用旧内存的单选按钮-中断ng检查