Hinweis: Verwenden von Vue.js und Vuetify.js für Funktionalität und Styling.Wie schaltest du eine Taste mit Vue.js?
Mit :class
und @click
Eigenschaften konnte ich die Schaltfläche Hintergrundfarbe, um die gewünschte Farbe ändern, aber es gilt die Änderung alle von ihnen, und nicht nur die, die ich angeklickt.
Frage: Wie kann ich einen Schalter umschalten, ohne alle Schalter gleichzeitig schalten zu müssen?
In meiner vue-Datei:
<v-layout>
<v-flex md6>
<v-text-field>Welcome.</v-text-field>
</v-flex md6>
<v-flex id="icon-filter">
<span>Filter by:</span>
<v-btn class="filter-button" :class="{toggled: isToggled}" @click="isToggled = !isToggled"><v-icon>local_offer</v-icon></v-btn>
<v-btn class="filter-button" :class="{toggled: isToggled}" @click="isToggled = !isToggled"><v-icon>notifications</v-icon></v-btn>
</v-flex>
</v-layout>
Im script
Abschnitt gleicher vue-Datei:
<script>
export default {
data: function() {
return {
companies,
msg: "indiv",
dashboards: ['profile', 'charts'],
isToggled: false
}
},
methods: {
}
}
</script>
ich durch diese Frage gelesen habe, aber ich erhalte eine Warnung Vue, zu erwähnen, dass Ich habe isToggled
Methode als bereits definierte Daten Eigenschaft. Toggle Class for an item Vue.js
Ich lese auch durch vue.js docs auf Datenbindung, aber immer noch brauchen Hilfe zu diesem Thema.
Vuetify Rahmen hat Tastenkomponenten umgeschaltet, aber Client will einen eindeutigen Stil, so kann dies nicht verwenden. https://vuetifyjs.com/components/buttons
Sie benötigen für jede Schaltfläche ein eigenes 'isToggled', wie' localOfferIsToggled'. – ceejayoz
Jede Schaltfläche sollte eine separate Komponente sein, so dass sie interne Verweise auf ihren eigenen Status haben. Was Sie gerade tun, ist das Aktualisieren eines globalen Status **, der für alle Schaltflächeninstanzen ** freigegeben ist. – Terry
@Terry Können Sie mehr über Ihren Kommentar erfahren? – pshn