2013-08-06 73 views
0

我有一個角色程序,創建一個帶選項的選擇。我使用包含兩個對象的數組。Angularjs和選擇數組包括__proto__

我創建了這裏的jsfiddle例如:http://jsfiddle.net/ucHAe/

但是選擇最終建立一個額外的選擇選項。我被這個額外的選項所困惑,並且只能認爲這是由於存在稱爲'proto'的第三個和最後一個條目。我使用的是Chrome v28.0.1500.95。

控制檯輸出爲鍍鉻的console.log:

[Object, Object] 
0: Object 
    id: 0 
    mode: "Search" 
    url: "http://google.com" 
    __proto__: Object 
1: Object 
    id: 1 
    mode: "Social" 
    url: "http://facebook.com" 
    __proto__: Object 
length: 2 
__proto__: Array[0] 

任何想法就是爲什麼這是怎麼回事?

回答

2

因爲您錯誤地設置了ng-model,所以創建了所謂的額外選擇選項(我假設它是空白選項)。根據ng-options中定義的理解表達式,您需要將selectOption設置爲對象而不是ID。

在控制器的末尾添加它可以修復它,所以在下拉列表中只會顯示2個。

$scope.selectOption = $scope.options[0]; 

希望它有幫助。

Demo

+0

這肯定解決我的問題我沒有對象,這使得感負荷的角度來考慮它。選定的選項將分配適當的參考。很高興知道未來。 – nienaber