这是jsbin中的问题:http://emberjs.jsbin.com/bahuvusa/29/edit
当我有这样的选择时:
{{view Ember.Select
contentBinding="items"
optionValuePath="content.value"
optionLabelPath="content.caption"
value=value
}}
在路由中将items
设置为PromiseArray
,数据如下所示:
[
{value: 1, caption: "one"},
{value: 2, caption: "two"},
{value: 3, caption: "three"}
]
我在控制器中设置了值:
value: function() {
return 2;
}.property()
当模板渲染时,我希望选择 second 元素,而是将值设置为undefined
(参见jsbin)。
有没有办法让这项工作? (不使元素成为余烬数据模型并使用selectionBinding
)
我最终使用了afterModel
钩子并从中返回了承诺:http://emberjs.jsbin.com/bahuvusa/40/edit
答案 0 :(得分:1)
根据你帖子中的评论,我从这张票的最后一条评论中获取了一些代码github.com/emberjs/ember.js/issues/1333并进行了一些小改动,这就是现在代码的样子:http://emberjs.jsbin.com/bahuvusa/30/edit
答案 1 :(得分:0)
您可以根据选择更改事件将选择绑定到要动态更新的模型或属性。因此,将模型或集合分配给selection
属性,您还可以在其中设置prompt
:
{{view Ember.Select
contentBinding="content"
optionValuePath="content.value"
optionLabelPath="content.caption"
selection=model.value
prompt="Set the prompt"
value=value
}}
示例JSBin:http://emberjs.jsbin.com/bahuvusa/27/edit
这与车把助手的全面概念/模式完全相同。希望派上用场!