Google уже не может мне помочь.
У меня есть шаблон в Vue, например:
<template>
<button
:class="{ 'button-selected': isSelected }">
</button>
</template>
Все прекрасно работает, пока я не попытаюсь использовать CSS Модули:
<template>
<button
:class="{ styles['button-selected']: isSelected }">
</button>
</template>
...
import styles from "./Button.scss"
...
data () {
return {
styles
}
}
Конечно. Я не могу его использовать, поскольку
let obj = { style['button-selected']: this.isSelected }
также являются недопустимым выражением.
Я нашел временное решение:
<template>
<button
:class="classes">
</button>
</template>
...
computed: {
classes () {
let obj = {}
obj[this.styles['button-selected']] = this.isSelected
return obj
}
}
Но так как я использую этот шаблон, мне нужно создать вычисленную опору для каждого элемента.
Я пытаюсь найти другой способ сделать это.
Заранее спасибо за помощь.