Ember.js 如何在控制器中获取模型值
试图在控制器的Ember.js 如何在控制器中获取模型值,ember.js,Ember.js,试图在控制器的操作(警报)中获取单击的项目的值,但我总是得到未定义的。我想从模型返回JSON(多个条目),并在控制器中访问它(不使用FixtureAdapter) ... {{{#模型中的每个项目} '中的操作+this.get('model').get('name')); } } }); 为什么不将项目作为参数传递给操作 {{#each item in model}} <p {{aciton 'myClick' item}}> {{item.name}} &l
操作
(警报)中获取单击的项目
的值,但我总是得到未定义的
。我想从模型返回JSON(多个条目),并在控制器中访问它(不使用FixtureAdapter
)
...
{{{#模型中的每个项目}
{{item.name}
{{/每个}}
...
App.FirstRoute=Ember.Route.extend({
模型:函数(){
返回[
{name:'Ruby'},
{name:'Java'}
]
//返回['Ruby','Java','Scala'];
}
});
App.FirstController=Ember.Controller.extend({
标题:“来自FirstController的数据”,
行动:{
myClick:function(){
警报('controller->'中的操作+this.get('model').get('name'));
}
}
});
为什么不将项目作为参数传递给操作
{{#each item in model}}
<p {{aciton 'myClick' item}}> {{item.name}} </p>
{{/each}}
App.FirstController = Ember.Controller.extend({
title:'data from FirstController',
actions: {
myClick: function(item) {
alert('action in controller -> ' + item.name);
}
}
});
{{{#模型中的每个项目}
{{item.name}
{{/每个}}
App.FirstController=Ember.Controller.extend({
标题:“来自FirstController的数据”,
行动:{
myClick:功能(项目){
警报(“控制器中的操作->”+项名称);
}
}
});
顺便说一句,您不会返回路线中的
Ember.Object
。您的模型是纯javascript对象的数组,因此不使用item.get('name')
使用item.name
绝妙的想法。但我得到了uncaughttypeerror:undefined不是控制台中的一个函数
。我能修好它
{{#each item in model}}
<p {{aciton 'myClick' item}}> {{item.name}} </p>
{{/each}}
App.FirstController = Ember.Controller.extend({
title:'data from FirstController',
actions: {
myClick: function(item) {
alert('action in controller -> ' + item.name);
}
}
});