Я знаю, что должен использовать Vue.set (объект, свойство, значение) для обеспечения реактивности в Vue, но следующий код не работает.
Компонент:
Vue.component('answer-block', {
props: ['letters'],
template: `
<div>
<div id='keyboard' v-if="mode==='type'">
<div :key='idx' :style='letterStyle(letter)' :class='letterClass(letter)' v-for='(letter,idx) in letters' @click='setLetter(letter,"click")'>{{letter.letter}}</div>
</div>
</div>
`
Метод компонента "setLetter":
Vue.set(selected,'correct',true);
Метод компонента "letterClass":
return {
"key": true,
"correct": letter.correct === true
};
Проблема: класс "правильный" не применяется к div, когда установлено свойство буквы "правильный"к "истинному" Частичное решение: Просмотр обновлений при использовании "this. $ forceUpdate ();"но не без вызова этой функции
Как мне получить представление для обновления с реактивным обновлением без вызова forceUpdate в вышеприведенном случае?
Большое спасибо.