Ember.Select опция по умолчанию - PullRequest
2 голосов
/ 16 марта 2012

Как установить опцию по умолчанию для поля выбора при загрузке страницы?Я попытался установить значение по умолчанию для selectedPersonController в примере ниже, но безрезультатно.Я что-то не так делаю?

var App = Ember.Application.create();

App.Person = Ember.Object.extend({
    id: null,
    firstName: null,
    lastName: null,

    fullName: function() {
        return this.get('firstName') + " " + this.get('lastName');
    }.property('firstName', 'lastName').cacheable()
});

App.selectedPersonController = Ember.Object.create({
    person: null
});

App.peopleController = Ember.ArrayController.create({
    content: [
        App.Person.create({id: 1, firstName: 'Yehuda', lastName: 'Katz'}),
        App.Person.create({id: 2, firstName: 'Tom', lastName: 'Dale'}),
        App.Person.create({id: 3, firstName: 'Peter', lastName: 'Wagenet'}),
        App.Person.create({id: 4, firstName: 'Erik', lastName: 'Bryn'})
    ]
});

Шаблон:

{{view Ember.Select
       contentBinding="App.peopleController"
       selectionBinding="App.selectedPersonController.person"
       optionLabelPath="content.fullName"
       optionValuePath="content.id"}}

1 Ответ

2 голосов
/ 16 марта 2012

Вы не назначаете конкретного человека на App.selectedPersonController. Смотрите рабочий пример здесь: http://jsfiddle.net/ZpTYV/

// set a default selected person
App.selectedPersonController.set('person', App.peopleController.objectAt(1));

Я не знаю, является ли это опечаткой в ​​вашем примере, но вы также должны объявить App глобально, чтобы к нему можно было обратиться в шаблоне Handlebars.

...