2
Controller:
games : Ember.A(["1", "2", "3"]),
View:
{{#each view.games}}
{{view Ember.TextField valueBinding="this"}}
{{/each}}
當我更改文本字段的值時,它不會同時更改數組?ember.js:當我使用valueBinding爲數組時,它不起作用
Controller:
games : Ember.A(["1", "2", "3"]),
View:
{{#each view.games}}
{{view Ember.TextField valueBinding="this"}}
{{/each}}
當我更改文本字段的值時,它不會同時更改數組?ember.js:當我使用valueBinding爲數組時,它不起作用
嗚嗚,我對這個奇怪的感覺......如果你在陣列中使用的對象,那麼綁定效果很好,用字符串,如你這樣做,有效地它不工作...
<script type="text/x-handlebars">
<h5> work with object </h5>
{{#each plop in App.controller1}}
{{view Em.TextField valueBinding="plop.name"}} {{plop.name}}
{{/each}}
<h5> don't work with strings </h5>
{{#each plop in App.controller2}}
{{view Em.TextField valueBinding="plop"}} {{plop}}
{{/each}}
</script>
window.App = Ember.Application.create({
controller1: Ember.ArrayController.create({
content: [{name:"aaaa"}, {name:"bbbbb"}, {name:"ccccc"}]
}),
controller2: ["aaaa", "bbbbb", "cccc"]
});
http://jsfiddle.net/Sly7/SQ5g8/
編輯:由於克里斯·塞爾登,誰解釋我是intented行爲,因爲兩種方式綁定工作,通過OBJ [關鍵],顯然,一個字符串有沒有這樣的關鍵。總而言之,沒有基於陣列位置的約束。
好的「編輯」。這有幫助!我們看到了單向綁定,但沒有得到爲什麼編輯該值不起作用。這解釋了它。 –
嘗試'{{#each view.games as game}} {{view Ember.TextField valueBinding =「game」}} {{/ each}}'。如果它仍然不起作用,您需要提供小提琴以幫助您。 –
@Zack語法是{{#each game in view.games}} :) –
@ sly7_7對,早上在這裏過早:) –