Von Vue-script auf Vue-style zugreifen?

1 Antwort

Vom Fragesteller als hilfreich ausgezeichnet

Dazu erstellst Du eine Klasse, die beim Klicken des Buttons bei den entsprechenden Eingabefeldern eingefügt wird. Von Inline-Styles und direkten Abänderungen des Stylesheets würde ich aus diversen Gründen abraten (siehe StackOverflow).

Die Klasse rot wird hier abhängig vom Wert der Variable markiert hinzugefügt (oder auch entfernt). Unter data wird die Boolean-Variable markiert initialisiert bzw. definiert. Der Eventhandler @click bewirkt, dass beim Anklicken des Buttons die Funktion klick() ausgeführt wird. Diese setzt die Variable markiert auf true, sodass die Klasse rot gesetzt wird und sich die Textfarbe des Eingabefelds ändert:

<div id="app">
    <input type="text" :class="{ rot: markiert }" />
    <button @click="klick">Klick</button>
</div>

.rot {
    color: red;
}

const app = Vue.createApp({
    data() {
        return {
            markiert: false
        }
    },
    methods: {
        klick() {
            this.markiert = true;
        }
    }
});
app.mount("#app");