使用AngularJS select元素将变量设置为对象而不是字符串
问题描述:
以下代码有效。我的问题是这是否是正确的做法。使用AngularJS select元素将变量设置为对象而不是字符串
可变设备是对象的数组,并且当用户选择一个可变selDev获取设置为这些对象中的一个。如果我通过ng-model属性制作selDev模型,那么它会得到一个字符串,而不是原始模型。
<p>
<label>Device Id:</label>
<select ng-model="selDevIndex"
ng-change="selDev = devices[selDevIndex]">
<option value="">(no device)</option>
<option ng-repeat="device in devices "
value="{{$index}}">
{{device.id}}: {{device.type}} {{device.mfr}}
{{device.serial}}
</option>
</select>
</p>
我觉得这有点笨拙,因为包含了$ index引用。如果设备是一个不是数组的对象,此技术也不起作用。有没有更好的办法?