1. Vom Vater zum Sohn Definieren Sie das Übergeordnete Komponente <Vorlage> <div> <Hallo Welt :title="msg" /> </div> </Vorlage> <Skript> importiere HelloWorld aus "../components/HelloWorld.vue"; Standard exportieren { Name: "Home", Daten() { zurückkehren { msg: "Musik suchen", }; }, Komponenten: Hallo Welt, }, }; </Skript> Unterkomponenten <Vorlage> <div Klasse="hallo"> <h1>{{ Titel }}</h1> </div> </Vorlage> <Skript> Standard exportieren { Name: "Hallo Welt", Requisiten: ["Titel"], Daten() { zurückkehren {}; }, }; </Skript> 2. Vom Sohn zum Vater Um einen Wert von einem untergeordneten an ein übergeordnetes Element zu übergeben, müssen Sie ein Ereignis in der untergeordneten Komponente auslösen. Rufen Sie in diesem Ereignis Unterkomponenten <Vorlage> <div Klasse="hallo"> <h1 @click="add">{{ Titel }}</h1> </div> </Vorlage> <Skript> Standard exportieren { Name: "Hallo Welt", Requisiten: ["Titel"], Daten() { zurückkehren { Alter:18 }; }, Methoden: { hinzufügen(){ dies.$emit("childEvent", dies.age); } }, }; </Skript> Übergeordnete Komponente <Vorlage> <div> <HalloWelt @childEvent="parentEvent" :title="msg" /> </div> </Vorlage> <Skript> importiere HelloWorld aus "../components/HelloWorld.vue"; Standard exportieren { Name: "Home", Daten() { zurückkehren { msg: "Musik suchen", }; }, Methoden: { übergeordnetesEreignis(e) { konsole.log(e); }, }, Komponenten: Hallo Welt, }, }; </Skript> 3. Wertübertragung von Brother-Komponenten 1. Erstellen Sie zunächst eine importiere Vue von „vue“; exportiere standardmäßig neues Vue; 2. Führen Sie <Vorlage> <div Klasse="hallo"> <h1 @click="add">{{ Titel }}</h1> </div> </Vorlage> <Skript> Bus aus "../publicFn/bus.js" importieren; Standard exportieren { Name: "Hallo Welt", Requisiten: ["Titel"], Daten() { zurückkehren { Alter:18 }; }, Methoden: { hinzufügen(){ bus.$emit("Kindereignis", dieses.Alter); } }, }; </Skript> 3. Verwenden Sie <Vorlage> <div id='swiper'> <button>Ich bin ein Knopf</button> </div> </Vorlage> <Skript> Bus aus "../publicFn/bus.js" importieren; Standard exportieren { Name:'Swiper', Daten (){ zurückkehren { } }, montiert(){ bus.$on("childEvent", (e) => { console.log(e) }) } } </Skript> 4. Übergeordnete Komponenten verwenden Daten und Methoden untergeordneter Komponenten 1. Schreiben Sie das 2. Die übergeordnete Komponente kann über Übergeordnete Komponente <Vorlage> <div> <HalloWelt :title="msg" ref="hallo" /> <button @click="parentEvent">Ich bin Vater</button> </div> </Vorlage> <Skript> importiere HelloWorld aus "../components/HelloWorld.vue"; Standard exportieren { Name: "Home", Daten() { zurückkehren { msg: "Musik suchen", }; }, Methoden: { übergeordnetesEreignis() { dies.$refs.hello.add(); Konsole.log(dies.$refs.hello.age); }, }, Komponenten: Hallo Welt }, }; </Skript> Unterkomponenten <Vorlage> <div Klasse="hallo"> <h1>{{ Titel }}</h1> </div> </Vorlage> <Skript> Standard exportieren { Name: "Hallo Welt", Requisiten: ["Titel"], Daten() { zurückkehren { Alter:18 }; }, Methoden: { hinzufügen(){ console.log("Ich bin eine untergeordnete Komponente"); } }, }; </Skript> 5. Untergeordnete Komponenten verwenden die Daten und Methoden übergeordneter Komponenten In einer untergeordneten Komponente können Sie mit Übergeordnete Komponente <Vorlage> <div> <HalloWelt :title="msg" ref="hallo" /> </div> </Vorlage> <Skript> importiere HelloWorld aus "../components/HelloWorld.vue"; Standard exportieren { Name: "Home", Daten() { zurückkehren { msg: "Musik suchen", }; }, Methoden: { übergeordnetesEreignis() { console.log("Ich bin die Methode der übergeordneten Komponente"); }, }, Komponenten: Hallo Welt }, }; </Skript> Unterkomponenten <Vorlage> <div Klasse="hallo"> <h1 @click="add">{{ Titel }}</h1> </div> </Vorlage> <Skript> Standard exportieren { Name: "Hallo Welt", Requisiten: ["Titel"], Daten() { zurückkehren { Alter:18 }; }, Methoden: { hinzufügen(){ Konsole.log(dies.$parent.msg) dies.$parent.parentEvent(); } }, }; </Skript> 6. Vuex-Wertübertragung 6.1, definieren Sie den Laden importiere Vue von „vue“; importiere Vuex von „vuex“; Vue.use(Vuex); exportiere standardmäßig neuen Vuex.Store({ Zustand: { Schule: "Tsinghua-Universität", a:"nett" }, Getter: { returnVal(Zustand) { returniere Staat.Schule + Staat.a; }, }, Mutationen: Schuleändern(Staat, Wert) { Staat.Schule = Wert; console.log('Änderung erfolgreich'); }, }, Aktionen: {}, Module: {} }); 6.2, Montieren importiere Vue von „vue“; App aus „./App.vue“ importieren; Router aus "./router" importieren; Store aus "./store" importieren; importiere ElementUI von „element-ui“; importiere "element-ui/lib/theme-chalk/index.css"; importiere publicFn aus "./publicFn/publicFn"; Vue.config.productionTip = falsch const url = Prozess.Umgebung.VUE_APP_URL; Vue.prototype.$url = URL; Vue.prototype.$publicFn = publicFn; Vue.use(ElementUI); neuer Vue({ Router, speichern, rendern: h => h(App), }).$mount('#app') 6.3, Nutzung <Vorlage> <div Klasse="hallo"> <h1 @click="add">{{ Titel }}</h1> </div> </Vorlage> <Skript> Standard exportieren { Name: "Hallo Welt", Requisiten: ["Titel"], Daten() { zurückkehren { Alter:18 }; }, Methoden: { hinzufügen(){ console.log(this.$store.state.school);//Wert abrufen//this.$store.commit('changeSchool', 'Peking University');//Wert ändern// console.log(this.$store.getters.returnVal)//Gefilterten Wert abrufen} }, }; </Skript> 7. Routing-Wert7.1 Werte per Abfrage übergeben Hinweis: Bei dieser Methode gehen die Seitenaktualisierungsparameter nicht verloren und die Parameter werden nach der Adressleiste angezeigt: Seite A <Vorlage> <div> <HalloWelt :title="msg" ref="hallo" /> <button @click="parentEvent">Springen</button> </div> </Vorlage> <Skript> importiere HelloWorld aus "../components/HelloWorld.vue"; Standard exportieren { Name: "Home", Daten() { zurückkehren { msg: "Musik suchen", }; }, Methoden: { übergeordnetesEreignis() { dies.$router.push({ Pfad:"/conter", Name: 'Zähler', Abfrage:{ Nr.: 10086, Name: „Peng Duoduo“ } }) }, }, Komponenten: Hallo Welt }, }; </Skript> Seite B <Vorlage> <div id='Zähler'> </div> </Vorlage> <Skript> Standard exportieren { Name: 'Zähler', Daten (){ zurückkehren { } }, erstellt (){ Konsole.log(diese.$route.query.id, diese.$route.query.name); }, } </Skript> 7.2 Werteübergabe über Parameter Hinweis: Wenn Sie die Seite auf diese Weise aktualisieren, gehen die Parameter verloren, sie können jedoch empfangen und im A-Seite <Vorlage> <div> <HalloWelt :title="msg" ref="hallo" /> <button @click="parentEvent">Springen</button> </div> </Vorlage> <Skript> importiere HelloWorld aus "../components/HelloWorld.vue"; Standard exportieren { Name: "Home", Daten() { zurückkehren { msg: "Musik suchen", }; }, Methoden: { übergeordnetesEreignis() { dies.$router.push({ Pfad:"/conter", Name:"Zähler", Parameter: { Nr.: 10086, Name: „Peng Duoduo“ } }) }, }, Komponenten: Hallo Welt }, }; </Skript> Seite B <Vorlage> <div id='Zähler'> </div> </Vorlage> <Skript> Standard exportieren { Name: 'Zähler', Daten (){ zurückkehren { } }, erstellt (){ Konsole.log(diese.$route.params.id, diese.$route.params.name); }, } </Skript> Damit ist dieser Artikel über die sieben Wertübertragungsmethoden von Vue abgeschlossen. Weitere Informationen zu den Wertübertragungsmethoden von Vue finden Sie in den vorherigen Artikeln von 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen! Das könnte Sie auch interessieren:
|
>>: Detaillierte Erklärung der grundlegenden Verwendung des SSH-Befehls ssh-keygen
Ich habe bereits zuvor ein Beispiel geschrieben, ...
Vorwort Dieser Artikel enthält 1. Mehrere wesentl...
IFNULL(Ausdruck1,Ausdruck2) Wenn expr1 nicht NULL...
Dadurch werden nicht nur die Kosten für die Entwic...
In unserer täglichen Entwicklungsarbeit sind Text...
Einführung Heute habe ich gelernt, wie man mit Py...
Erster Schritt: Klicken Sie in VMware auf "B...
Mit der Verbreitung von 3G nutzen immer mehr Mens...
Im vorherigen Artikel haben wir das ausführliche ...
Bevor wir beginnen, erstellen wir zwei Tabellen, ...
1. Entpacken Sie die heruntergeladene Datei wie u...
Die Cursorgröße im Eingabefeld ist inkonsistent De...
Wenn Sie Bash beenden möchten, haben Sie zwei Mög...
Inhaltsverzeichnis 1. Baidu Map API-Zugriff 2. Ve...
1. Docker installieren Öffnen Sie zunächst die Li...