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
Jenkins ist ein Open-Source-Softwareprojekt. Es h...
Inhaltsverzeichnis 1. Konfigurieren Sie den Linux...
Die Funktion, die ich erreichen möchte, besteht d...
Inhaltsverzeichnis Bereitstellung mehrerer Anwend...
Problem: Die von mybatis zurückgegebenen Daten vo...
Inhaltsverzeichnis Vorwort 1. Technisches Prinzip...
Inhaltsverzeichnis Aufbau einer JSX-Umgebung Einr...
Wenn Sie benutzerdefinierte Zabbix-Skripte zum Sa...
Vorwort Heutzutage wird in Projekten häufig die A...
Den Ergebnissen zufolge gibt es für die Definitio...
In diesem Artikel wird erläutert, wie Sie einen I...
Dieser Artikel beschreibt anhand von Beispielen d...
Als ich mir selbst die Webentwicklung beibrachte,...
Inhaltsverzeichnis 1. Geltungsbereich 2. Geltungs...
Voraussetzungen: Docker ist bereits installiert 1...