Ember: позволяет ли ember-model привязывать вычисляемые значения с помощью .properties()

Я пытаюсь получить вычисленное значение в моей модели для обновления, используя синтаксис .property('key'). Моя модель такая:

App.Camera = Em.Model.extend({
    id: attr(),
    uid: attr(),
    name: attr(),
    type: attr(),
    refresh: attr(),

    thumbnailUrl384x216: function() {
        return '%@/devices/%@/thumbnail?width=384&height=216'.fmt(apiBaseUri, this.get('uid'));
    }.property('uid', 'refresh'),

    thumbnailUrlFull: function() {
        return '%@/devices/%@/thumbnail?width=1280&height=720'.fmt(apiBaseUri, this.get('uid'));
    }.property('uid', 'refresh')
});

В моем маршруте камеры я изменяю переменную обновления с интервалом, но это не приводит к обновлению thumbnailUrl. Я делаю что-то не так или ember-model не поддерживает функцию .property().

Я могу использовать атрибут обновления в своем шаблоне и вижу, что он обновляется. Есть идеи?


person HypeXR    schedule 11.04.2014    source источник
comment
Ember-Model использует объектную модель Ember, поэтому определенно поддерживает вычисляемые свойства. Вы уверены, что само значение не обновляется? Возможно, значение есть, а ваш шаблон — нет. Попробуйте console.log в одном из операторов свойств, чтобы увидеть, получите ли вы что-нибудь.   -  person GJK    schedule 11.04.2014
comment
Это работает, так как я не использовал обновленное значение, а результат вычисленного значения не менялся, что меня сбило с толку. Спасибо!   -  person HypeXR    schedule 11.04.2014


Ответы (1)


Вычисленное значение не обновлялось, потому что я не использовал изменяющееся значение обновления в вычислении. Добавление, которое исправило это.

person HypeXR    schedule 11.04.2014