添加一个返回搜索并替换属性的函数

时间:2015-06-23 13:11:00

标签: ember.js ember-data

应用/模型/ pictures.js

import DS from 'ember-data';

var Picture = DS.Model.extend({
  url: DS.attr('string')
});

export default Picture;

这是一个示例JSON数据集:

{
 - pictures: [
    - {
        id: 1,
        url: "http://example.com/path/large/example.jpg"
      }
   ]
}

我需要显示已存储在服务器上但在网址中有medium而不是large的较小版本的图片。如何向picture模型添加一个函数,该模型返回s/large/medium/ url属性的backgroundColor: '#fcfcfc',的搜索和替换?

1 个答案:

答案 0 :(得分:1)

您需要使用依赖于url属性的计算属性并返回其修改后的版本:

var Picture = DS.Model.extend({
    url: DS.attr('string'),
    urlReplaced: Ember.computed('url', function() {
      var url = this.get('url');
      if (url) {
        return url.replace('large', 'medium');
      }
    })
});

然后你可以使用:

<img src={{model.urlReplaced}} />

其中model是Picture model的具体实例。

相关问题