Просмотр не обновляется в Vue 2 (используя Vue.set для свойства объекта в компоненте) - PullRequest
0 голосов
/ 08 октября 2018

Я знаю, что должен использовать 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 в вышеприведенном случае?

Большое спасибо.

...