Lösung für die Verwendung von JS-definierten Namen als CSS-Variablen in VueJS.
<p>Ich verwende Vuetify, das CSS-Variablen für jede Designfarbe erstellt (wie --v-theme-primary). Ich möchte in der Lage sein, die Farbe in CSS auf --v-theme-{something} zu setzen und den Wert von {something} von JS zu erhalten. Zum Beispiel: </p>
<pre class="brush:js;toolbar:false;"><template>
<div :class="$style['colored-text']">Asd</div>
</template>
<script lang="ts" setup>
const color = ref("primär")
</script>
<style lang="scss" module>
.colored-text {
Hintergrundfarbe: var(--v-theme-[[v-bind(color)]]);
}
</style>
</pre>
<p> [[v-bind(color)]] ist eine ungültige Syntax, ich habe sie nur zur Demonstration aufgerufen. Ich möchte dort den Farbnamen oder etwas aus der Farbreferenz einfügen können, damit ich var(--v-theme-{color}) in CSS verwenden kann, wo die Farbe von JS kommt. Im Beispiel würde es zu var(--v-theme-primary) werden. <br /><br />Haben Sie irgendwelche Ideen? Ist dieser Ansatz machbar? </p><p><br /></p>