Vue ist eine Javascript Framework für das Erstellen und Instantiieren von Oberflächen-Komponenten.
Allgemeines#
Am Besten versendet man Vue zusammen mit RequireJS, damit man Komponenten dynamisch laden kann.Application#
Um eine Vue-Applikation zu starten, wird eine bestehendes HTML-Tag verwendet:new Vue({ el: "#vue-root" });
RequireJS#
Zusammen mit RequireJS sieht es dann so aus:define(["vue"], function(Vue) { return new Vue({ el: "#vue-root" }); });
Components#
Komponenten werden mit Vue.component definiert:define(["vue"], function(Vue) { return Vue.component("simple-component", { props: { value: String }, template: '<div>{{value}}</div>' }); });
Reactivity#
Vue implementiert standardmäßig Reactivity. Änderungen in Properties führen zu Änderungen in der View (dem DOM-Tree). Allerdings gibt es einige Besonderheiten.Simple Property#
Einfache Properties, etwa String, Number, Boolean sind nicht reaktiv, da das zugrundeliegende Objekt nicht beobachtet werden kann. Die Reaktivität kann programmatisch vorgenommen werden.Child:
methods: { _visible: function(visible) { this.$emit("update:visible", visible); } }
Parent:
<dialog-panel :visible.sync="visible">[...]</dialog-panel>