在我的ember应用程序中我想加载图像。我的模型有几个图像,所以我把它们装入异常。
fotos: DS.hasMany('foto', { async: true })
每个'foto'对文件位置'fileName:DS.attr()'都有一个proptery。现在,在我的路线控制器中需要扩展路径以将图像加载为背景图像:
loadImage: function(){
var path;
this.get('model').forEach(function(art){
art.get('fotos').then(function(fotos){
path = fotos.get('content')[0].get('fileName');
})
});
return "background-image:url(" + path +")";
}.property()
(日志说)loadImage或path包含图像的正确路径。在我的模板中,当我尝试使用{{loadImage}}呈现它时,它永远不会出现。我怎么能改变它?
答案 0 :(得分:0)
路径正在异步设置,并且您将立即返回一个空值。
firstImagePath: Em.computed.alias('firstObject.fotos.fileName'), // this assumes you're in an ArrayController
loadImage: function(){
var path = this.get('firstImagePath');
return "background-image:url(" + path +")";
}.property('firstImagePath')