2015-11-14 88 views
9

我有以下代碼:奧裏利亞選擇初始值

的javascript:

export class App { 
    values = [ 
    {id: 0, text:'Text 1'}, 
    {id: 1, text:'Text 2'}, 
    {id: 2, text:'Text 3'} 
    ]; 

    obj = { 
    selected: 2 
    }; 
} 

HTML:

<template> 
    <select value.bind="obj.selected"> 
    <option repeat.for="option of values" value="${option.id}">${option.text}</option> 
    </select> 
</template> 

的問題是,select的初始值是不是thirth選項如預期。

我必須做些什麼才能使它正常工作?

Plunk example

+2

@blm - 我不認爲我的問題是,你有聯繫的一個... –

回答

10

id屬性的類型數量,所以你要確保每個選項元素的「價值」的型號也。這意味着你不想使用字符串插值綁定(例如${...}),因爲它們總是將源值轉換爲字符串。您也不會希望使用選項元素的value屬性來存儲值,因爲此屬性只接受字符串。而是使用model屬性,這是aurelia的綁定系統理解並可以存儲任何類型的特殊屬性。這些類型的情況在文檔here中討論。

tldr:改變你的選項元素結合到這一點:

<option repeat.for="option of values" model.bind="option.id">${option.text}</option> 
+0

當前奧裏利亞文檔頁面的副本對於選擇是在這裏:http://aurelia.io/hub.html#/doc/article/aurelia/binding/latest/binding-selects/1 :) –