我有一个项目列表,其中一些具有属性值,一些具有属性默认值。我需要用ng-repeat将它绑定到输入[文本]中。
阵是样子:'或','和'in ng-model angularjs
$scope.arr = [
{value:'name'},
{value:'dog'},
{default:'cat'},
{value:'lastName'},
{default:'ring'}
];
,而在HTML:
<div ng-repeat='item in arr'>
<input type='text' ng-model='item.value || item.default'>
</div>
它的工作原理,但我在控制台错误消息 “[ngModel:nonassign] http://errors.angularjs.org/1.5.8/ngModel/nonassign?p0=item.value%20%7C%7CNaNtem.default&p1=%3Cinput%20type%3D%22text%22%20ng-model%3D%item.value%20%7C%7C%item.default%22%20class%3D%22ng-pristine%20ng-untouched%20ng-valid%22%3E”。因为ng-model不适用于表达式。 也许有另一种解决方法吗?
THX!这是个好主意,但是当value =''(空)时,ng-show会隐藏这个字段。所以也许我需要做一些检查,比如'ng-show ='fieldCheck(item)'','$ scope.fieldCheck = function(item){if('value'in item)return true}' - 例如。 。 – YoroDiallo
@YoroDiallo等一下,你有兴趣展示这两个领域?你期望的最终结果是什么? –
是的,我需要将所有对象粘贴到输入中。数组中的每个对象都有默认值或值属性,它可以是空的或有一些值,但我需要将它绑定到输入中。所以当'value ='''我可以从输入中填充它(在输入中写入某些东西) – YoroDiallo