Ember multiselect的语法

时间:2012-04-23 06:16:27

标签: ember.js multi-select

到目前为止尝试多语言的语法如下,即包括multiple =“multiple”

{{view Ember.Select multiple="multiple"
    contentBinding="App.viewPersonController"
    selectionBinding="App.selectedPersonController.person"
    optionLabelPath="content.personName"
    optionValuePath="content.id"
    prompt="Select..." }}
{{/view}}

以下是错误:

未捕获错误:断言失败:选择multiple为false,但您已指定了数组选择。

如何制作多个 true

1 个答案:

答案 0 :(得分:3)

除了Handlebars模板的问题之外,{{view}}不得使用结束标记关闭,但{{#view}}{{/view}}需要 - 您提供的代码可以正常工作。 multiple是布尔值,因此评估为true的所有内容都会将其设置为true。这就是分配multiple的原因。我还删除了prompt,因为它会混淆多个选项。我猜这是一个错误。见http://jsfiddle.net/pangratz666/p4QfQ/

<强>车把

{{view Ember.Select
    multiple="true"
    contentBinding="App.viewPersonController"
    selectionBinding="App.selectedPersonController.persons"
    optionLabelPath="content.personName"
    optionValuePath="content.id"}}

<强>的JavaScript

App.viewPersonController = Ember.ArrayProxy.create({
    content: [{personName: 'Alf', id: 1}, {personName: 'Brian', id: 2}]
});

App.selectedPersonController = Ember.Object.create({
    persons: []
});​

view Handlebars帮助器上的注释:如果您通过{{view ClassName}}指定视图,则告诉Handlebars呈现特定视图ClassName,其中模板定义为{{1}或者在视图的类上预编译为templateName

通过template声明视图,您正在定义视图的模板,该模板将被显式呈现。