ArrayController への contentBinding を持つEmber.Selectビューがあります。ArrayController に itemController を設定すると、突然次のエラーがスローされます: Uncaught TypeError: Cannot call method 'child' of null
最小限の例を次に示します。
<script type="text/x-handlebars" data-template-name="application">
{{view Ember.Select viewName="select"
contentBinding="App.monstersController"
optionLabelPath="content.name"
optionValuePath="content.id"
prompt="Pick a monster:"
selectionBinding="App.stateController.selectedMonster"}}
</script>
そしてJavaScript:
window.App = Em.Application.create();
App.ApplicationController = Em.Controller.extend({});
App.ApplicationView = Em.View.extend({
templateName: 'application'
});
App.data = [{
id: 1,
name: "Grog",
strength: 10,
species: "Troll"
}, {
id: 2,
name: "Ognog",
strength: 8,
species: "Goblin"
}, {
id: 3,
name: "Fred",
strength: 3,
species: "Human"
}];
App.stateController = Em.Controller.create({
selectedMonster: null
});
App.MonsterController = Em.ObjectController.extend({
name: function() {
return "Controller Modified " + this.get('name');
}.property('content.name')
});
App.MonstersController = Em.ArrayController.extend({
content: App.data/*,
itemController: "monster"*/
});
App.monstersController = App.MonstersController.create({});
ここにフィドルがあり、問題を示しています: http://jsfiddle.net/Malkyne/AkHhF/
ここで何が起こっているのか、またはどうすれば修正できるのか、誰にもわかりませんか?