Angularjs: 如何让ui-select只有一种方式绑定模型?
Angularjs: How to make ui-select have only one way model biding?
使用 angularjs navite select 指令,模型绑定只是一种方式,而在 ui-select 中,这似乎总是双向绑定。
<ui-select ng-model="uiSelected.animal">
<ui-select-match>
<span ng-bind="$select.selected.name"></span>
</ui-select-match>
<ui-select-choices repeat="animal in (animals | filter: $select.search) track by $index">
<span ng-bind="animal.name"></span>
</ui-select-choices>
</ui-select>
这是展示我的问题的 plunker: https://plnkr.co/edit/FkZsFcMrTveWjXR5HNyT?p=preview
我的问题:
如何使 ui-select 仅以一种方式与模型竞标,以便在我更改 selected 范围模型时它不会绑定到ui-select?如果我换句话说:如何让 ui-select 表现得像 angular 原生 select?
您可能需要将 $watch 添加到 animal/car 并将您的 selected 对象保存在不同的 $scope 变量中。我看不到另一种方式,因为 uiSelected 引用了动物数组中的对象。
使用 on-select 事件:
on-select="onSelectCallback($item, $model)"
对此使用单向绑定,
{{::animal.name}}
使用 angularjs navite select 指令,模型绑定只是一种方式,而在 ui-select 中,这似乎总是双向绑定。
<ui-select ng-model="uiSelected.animal">
<ui-select-match>
<span ng-bind="$select.selected.name"></span>
</ui-select-match>
<ui-select-choices repeat="animal in (animals | filter: $select.search) track by $index">
<span ng-bind="animal.name"></span>
</ui-select-choices>
</ui-select>
这是展示我的问题的 plunker: https://plnkr.co/edit/FkZsFcMrTveWjXR5HNyT?p=preview
我的问题:
如何使 ui-select 仅以一种方式与模型竞标,以便在我更改 selected 范围模型时它不会绑定到ui-select?如果我换句话说:如何让 ui-select 表现得像 angular 原生 select?
您可能需要将 $watch 添加到 animal/car 并将您的 selected 对象保存在不同的 $scope 变量中。我看不到另一种方式,因为 uiSelected 引用了动物数组中的对象。
使用 on-select 事件:
on-select="onSelectCallback($item, $model)"
对此使用单向绑定,
{{::animal.name}}