Objekto su CSS klasėmis reaktyvumas Vue

Objektas su CSS klasėmis skirtas tam, kad būtų patogiai reaktyviai priskiriamos klasės elementams. Pažiūrėkime, kaip tai daroma. Tarkime, kad turime tokį objektą su klasėmis:

javascriptdata() {
  return {
    styles: {
      done: false,
    },
  }
}

Pririškime šį objektą prie teg'o:

App.vue<template>
  <p :class="styles">text</p>
</template>

Tegul klasės done buvimas perbraukia teg'o tekstą:

cssp.done {
  text-decoration: line-through;
}

Sukurkime mygtuką, kurio paspaudimas pakeis objektą su stiliais, įjungdamas klasę done:

App.vue<template>
  <button @click="setDone">hide</button>
</template>

Parašykime atitinkamą metodą:

App.vuemethods: {
  setDone: function() {
    this.styles.done = true;
  }
}
Задание 1

Duotas toks objektas su CSS klasėmis:

javascriptdata() {
  return {
    obj: {
      hidden: true,
    },
  }
}

Tegul šios klasės buvimas paslepia elementą:

cssp.hidden {
  display: none;
}

Pritaikykite objektą su klasėmis kokiam nors teg'ui su tekstu.

Задание 2

Padarykite mygtuką, kurio paspaudimas rodytų elementą.

Задание 3

Padarykite mygtuką, kurio paspaudimas slėptų elementą.

Задание 4

Padarykite mygtuką, kurio paspaudimas perjungtų elementą (rodytų, jei paslėptas; slėptų, jei rodomas).