У меня есть службы сообщений, которые будут в конечном итоге получить сообщения, сохраненные в базе данных, и установить их в глобальном масштабе для пользователя, но сейчас я их установить, как такВычисляется свойство на ключ объекта, переданного в качестве параметра компонента
messages: [
Ember.Object.create({
id: 1,
name: "Out Bid",
body: "You've been out bid on an item",
read: false,
seen: false
}),
Ember.Object.create({
id: 2,
name: "Out Bid",
body: "You've been out bid on an item, You've been out bid on an item",
read: true,
seen: false
})
],
У меня есть некоторые вычисления, которые расскажут мне, сколько из этих сообщений не было помечено как seen
, и когда я нажимаю на этот пузырь, который показывает, превышает ли это число 0, я перехожу на маршрут messages
. В messages
маршруте я впрыснуть messages
обслуживание и установить модель, равную сообщения о том, что служба имеет в нем
model() {
return this.get('messages').get('messages');
}
Этот маршрут отображает сообщения из каждого цикла, который оказывает компоненту
{{#each model key="id" as |message|}}
{{message-item message=message}}
{{/each}}
в компоненте Я пытаюсь добавить unread
класс как так
classNameBindings: ['unread'],
unread: Ember.computed('message.unread',function(){
return this.get('message').get('read') === false;
}),
И это прист Король, однако, когда я стрелять нажмите действия, чтобы показать сообщение в модальном и поэтому пометить его как read
вычисленные не обновляется
click() {
var message = this.get('message');
this.get('notification').notify({message: message.get('body')});
message.set('read',true);
}
Если я console.log
значения message.get('read')
до и после того, как я установил его, я вижу что он правильно установлен, но шаблон не обновляет вычисленный, чтобы удалить класс unread
после его отмеченного чтения.
Вы код в течение всего дня каждый день, и ожидать, чтобы не пропустить такие мелочи, как это! – Jordan