0
我有一個問題,我無法理解,也許有些可以讓我對「爲什麼」。ng選擇怪異行爲
我檢索後端用戶,比方說,它看起來像這樣:
$ scope.user { ID:1, 狀態:{ ID:1, 標籤:測試 }}
我檢索所有狀態列表從後端
$ scope.statusL IST = [{ ID:1, 標籤:測試 }, { ID:2, 標籤:託羅 }]
我想顯示的選擇輸入,包含狀態列表和與用戶身份
在我的模板預選,我有以下幾點:
<select ng-model="userStatus" ng-options="status.label for status in statusList"></select>
在我的控制,我曾嘗試以下
案例1:預選工作
function findObject(listObject, Object){
for(var i in listObject){
if(listObject[i] == Object) {return listObject[i]};
}
return listObject[0];
}
$scope.userStatus = findObject($scope.statusList, $scope.user.status);
案例2:不工作
$scope.userStatus = $scope.user.status
案例3:不工作
$scope.userStatus = {id:2,label:toro}
案例4:不工作
在我的模板0,我把直接下
<select ng-model="user.status" ng-options="status.label for status in statusList"></select>
爲什麼情況2和3的情況下也不會預選選擇框??? 更重要的是,case4對於編輯用戶而不用在新變量中拷貝everthing是非常有用的,那爲什麼它不起作用呢?
那麼人們通常如何做呢?他們像case1那樣使用中間值? – VincentSerpoul
我想是的。我沒有看到很多Angular的用法。剛開始自己使用它。很多時候,無論如何,您只需擁有用戶身份的ID即可。 –
好的:'(。Quoiqu'il en soit,merci de votre aide JB Nizet – VincentSerpoul