www.wikidata.de-de.nina.az
Vue js View englische Aussprache vjuː ist ein clientseitiges JavaScript Webframework zum Erstellen von Single Page Webanwendungen nach dem MVVM Muster es kann allerdings auch in Multipage Webseiten fur einzelne Abschnitte verwendet werden Ab Version 2 0 unterstutzt es auch serverseitiges Rendern 4 Vue jsBasisdatenMaintainer Evan YouEntwickler Evan You Online CommunityErscheinungsjahr Februar 2014 1 Aktuelle Version Vue 2 2 7 14 2022 11 09 2 Vue 3 3 3 4 2023 05 18 3 Betriebssystem PlattformunabhangigProgrammiersprache JavaScript bis Version 2 6 TypeScript ab Version 3 0 Kategorie FrameworkLizenz MIT Lizenzdeutschsprachig neinvuejs orgNeben der aktuellen Version Vue 3 wurde Vue 2 weiter gepflegt 5 diese Version wird aber zum 31 Dezember 2023 6 seinen End of life Termin erreichen Inhaltsverzeichnis 1 Konzept 2 Struktur 2 1 Die Vue Instanz 2 2 Komponenten 2 3 Double Curly Syntax 2 4 Direktiven 2 5 Lebenszyklus der Komponenten 2 6 Modularitat 3 Varianten 4 Single File Components 5 Verwendung in Wikimedia 6 Siehe auch 7 Weblinks 8 EinzelnachweiseKonzept BearbeitenDie Entwickler bezeichnen Vue js als progressiv und inkrementell adaptierbar im Vergleich zu anderen Webframeworks Dies erlaubt dem nutzenden Entwickler die Struktur der Anwendung nach eigenen Anspruchen zu richten Die Entwickler bezeichnen Vue js als einfacher zu erlernen als AngularJS da die API einfach gehalten wurde 7 Um Vue js einsetzen zu konnen sind lediglich Kenntnisse in JavaScript und HTML notwendig zur Benutzung und dem vollstandigen Erlernen ist die beispielreiche Dokumentation unter vuejs org 8 ausreichend 9 Durch Umsetzung des MVVM Musters bietet Vue js die Moglichkeit des Data Bindings so dass Aus und Eingaben direkt an die Datenquelle gekoppelt werden Somit ist das manuelle Ermitteln der Daten z B via jQuery aus dem HTML DOM nicht notwendig Hierbei sind keinerlei zusatzliche Annotationen wie bei Knockout js notwendig durch die Deklaration in einem Vue Element werden ganz normale JavaScript Variablen als reaktive Elemente eingebunden Struktur BearbeitenDie Vue Instanz Bearbeiten Jede Anwendung mit Vue js hat mindestens eine zentrale Instanz Je HTML Datei sind beliebig viele Instanzen moglich Eine Instanz wird mit der Eigenschaft el an einen HTML Knoten gebunden hier uber den CSS Selektor body definiert var vm new Vue el body data message Hallo Welt items dies ist ein Array Komponenten Bearbeiten Die Funktionalitat von Instanzen kann durch Komponenten erweitert werden welche sich baumartig verschachteln lassen Komponenten unterscheiden sich von Instanzen dadurch dass sie nicht an HTML Knoten angebunden werden sondern ein eigenes HTML Template enthalten Definition der Komponente und globale Registrierung derselben Vue component my component template lt div gt Dies ist eine neue Komponente lt div gt erzeugen der Vue Instanz new Vue el example lt HTML Knoten gt lt div id example gt lt my component gt lt my component gt lt div gt lt Wird im DOM zu gt lt div id example gt lt div gt Dies ist eine neue Komponente lt div gt lt div gt Double Curly Syntax Bearbeiten Durch die Verwendung der bei JavaScript Frameworks beliebten doppelten geschweiften Klammern double curly syntax konnen JavaScript Elemente in den HTML DOM eingefugt werden 10 Dabei wird das Element in der Datenquelle aus der Vue Instanz verknupft Das Databinding ist in beide Richtungen moglich Two way databinding wodurch die Veranderung der Daten durch den Benutzer ermoglicht wird 11 Die Direktive model sorgt fur das Databinding mit Input Elementen lt div id demo gt lt p gt message lt p gt lt input v model message gt lt div gt Direktiven Bearbeiten Mit HTML Attributen ist es moglich Aktionen auszufuhren wie zum Beispiel mit einer Schleife durch ein Array zu iterieren HTML Knoten nur optional in den DOM einzubinden v if HTML Knoten auszublenden v show Events abzufangen v on oder Attribute an Variablen zu binden v bind Die Direktiven von Vue js sind an dem Prafix v erkennbar 12 Es ist auch moglich Filter anzuwenden um die Ausgabe von JavaScript Elementen zu verandern 13 Eigene Direktiven und Filter konnen definiert werden in Form von JavaScript Funktionen lt ul gt lt li v for item in items gt item lt Ausgabe des Wertes gt item lowercase lt Ausgabe des Wertes in Kleinbuchstaben gt lt li gt lt ul gt Lebenszyklus der Komponenten Bearbeiten Alle Instanzen und Komponenten durchlaufen einen Lebenszyklus 14 dieser besteht aus mehreren Etappen welche dazu genutzt werden konnen eigene Funktionen aufzurufen Vor allem die Etappe mounted wird sehr haufig verwendet 15 da diese aufgerufen wird unmittelbar nachdem die Komponente im DOM eingebunden wurde Durch die Verwendung der vue Funktion next kann Code definiert werden welcher erst aufgerufen wird wenn die Komponente auch bereit ist new Vue mounted function Wird aufgerufen wenn die Komponente sichtbar wird wie z B durch v if oder vue router console log Diese Komponente wurde im DOM eingebunden bei Date now this next gt console log Die Komponente ist jetzt vollstandig bereit destroyed function Wird aufgerufen wenn die Komponente aus dem DOM entfernt wird removeListener XY Modularitat Bearbeiten Vue js kann durch Erweiterungen erganzt werden diese konnen Mixins 16 Direktiven Filter Komponenten und Objekte enthalten Als offizielle Erweiterungen werden vuex 17 ein an Redux 18 angelehnter Zustandsmanager und vue router 19 ein Komponenten Router angeboten Unter awesome vue 20 wird eine aktuelle Auflistung an Erweiterungen gepflegt So gibt es beispielsweise eine Erweiterung zum Durchfuhren von HTTP Requests 21 Diese wurde jedoch als offizielle Bibliothek aus dem Vue js Portfolio entkoppelt 22 Varianten BearbeitenVon Vue js gibt es sowohl eine Entwicklungs als auch Produktivversion 23 Die Entwicklungsversion ermoglicht die Ausgabe von Informationen und Warnungen wenn der Debug Modus aktiviert ist Die fur den Produktiveinsatz vorgesehene Version unterstutzt diesen Modus nicht 24 Fur die Entwicklungsversion gibt es eine Browsererweiterung fur Google Chrome und Mozilla Firefox um das Debugging der Anwendung zu erleichtern 25 Single File Components BearbeitenStatt fur jede Seite eine neue Vue Instanz zu erstellen kann auch durch sogenannte Single File Components eine einzige Instanz von Vue js erstellt und auf diese zugegriffen werden Dies bietet sich bei grosseren Projekten an wo eine Modularisierung notwendig sein kann Innerhalb von Single File Components wird blockweise das HTML CSS und JavaScript eingefugt lt template gt lt p gt greeting World lt p gt lt template gt lt script gt module exports data function return greeting Hello lt script gt lt style scoped gt p font size 2 em text align center lt style gt Verwendung in Wikimedia BearbeitenVue js ist die offizielle Wahl der Wikimedia Foundation fur die Verwendung als zukunftiges JavaScript Framework fur MediaWiki 26 27 Beispielsweise wurde die neue Mediensuche auf Wikimedia Commons mit Vue js realisiert 28 With excitement we re sharing today that Vue js is Wikimedia Foundation s official choice for adoption as future JavaScript framework for use with MediaWiki Volker E WMF 29 Siehe auch BearbeitenMVVM Angular React Ember js Backbone js Knockout jsWeblinks BearbeitenOffizielle Webprasenz englisch Offizielles Forum englisch Vue js Examples Vue js devtools Erweiterung fur Google ChromeEinzelnachweise Bearbeiten egghead io Github vuejs vue Releases Abgerufen am 13 Juni 2023 englisch Github vuejs core Releases Abgerufen am 13 Juni 2023 englisch Evan You Vue Guide Server Side Rendering https github com vuejs vuejs org 1 Februar 2017 abgerufen am 17 Februar 2017 englisch Evan You Frequently Asked Questions What s the difference between Vue 2 and Vue 3 Abgerufen am 13 Juni 2023 englisch Evan You Frequently Asked Questions Is Vue 2 Still Supported Abgerufen am 13 Juni 2023 englisch Comparison with Other Frameworks vue js In vuejs org Abgerufen am 15 Juli 2016 Introduction What is Vue js auf vuejs com Jacob Schatz Why We Chose Vue js Gitlab Blog 20 Oktober 2016 abgerufen am 17 Februar 2017 englisch Data Binding Syntax vue js In vuejs org Abgerufen am 15 Juli 2016 Getting Started vue js In vuejs org Abgerufen am 17 Juli 2016 List Rendering vue js In vuejs org Abgerufen am 15 Juli 2016 vue js In vuejs org Abgerufen am 17 Juli 2016 Lebenszyklus Understanding Vue js Lifecycle Hooks Abgerufen am 17 Februar 2017 englisch Mixins vuex Redux vue router awesome vue vuejs vue resource In GitHub Abgerufen am 17 Juli 2016 Evan You Retiring vue resource The Vue Point 3 November 2016 abgerufen am 17 Februar 2017 Installation vue js In vuejs org Abgerufen am 21 Juli 2016 vue js In vuejs org Abgerufen am 21 Juli 2016 Vue js devtools In chrome google com Abgerufen am 21 Juli 2016 Eric Gardner und Anne Tomasevich 2020 The Year in Vue In techblog wikimedia org Wikimedia Foundation 22 Januar 2021 abgerufen am 7 Dezember 2021 englisch Vue js In mediawiki org Wikimedia Foundation abgerufen am 7 Dezember 2021 englisch Extension MediaSearch In mediawiki org Abgerufen am 7 Dezember 2021 englisch https lists wikimedia org hyperkitty list wikitech l lists wikimedia org thread SOZREBYR36PUNFZXMIUBVAIOQI4N7PDU Abgerufen von https de wikipedia org w index php title Vue js amp oldid 234578200