Wir können jsx/tsx-Dateien direkt erstellen Die Projektstruktur sieht diesmal wie folgt aus: Verwenden Sie es so in der Vue-Datei // index.vue <Vorlage> <div Klasse="Wrapper"> <Allgemein :opt="Liste" /> </div> </Vorlage> <script lang="ts"> importiere { Komponente, Vue } von „vue-property-decorator“; importiere Common aus "./components/Common"; @Komponente({ Name: "App", Komponenten: Gemeinsam, }, }) exportiere Standardklasse App erweitert Vue { private Liste = ["Ich möchte zu Taobao", "Ich möchte zu Baidu", "Ich möchte zu JD"]; } </Skript> tsx schreibt so importiere { CreateElement } von „vue“; importiere { Komponente, Vue, Prop } von „vue-property-decorator“; @Komponente({ Name: „Allgemein“ }) exportiere Standardklasse Common erweitert Vue { @Prop(Objekt) opt!: beliebig[] render(h: ErstelleElement) { Rückkehr <span> { dies.opt.map((it) => { geben Sie <span style="marginRight:10px">{es} zurück</span> }) } </span> } } Schauen Sie sich die Seite an Jemand hat vielleicht bemerkt, dass ich auch auf Eine kurze Einführung in die Parameterübergabe: Erster Parameter: { Der zweite Parameter: Der dritte Parameter: { Die Rendering-Funktion bringt viel Flexibilität in Vue. Wenn Sie früher das Einfügen von etwas in eine untergeordnete Komponente anpassen wollten, mussten Sie viele // Transformiere die Daten von index.vue oben private Liste = [ { render: () => ["a", { style: { color: "red" } }, "Ich möchte zu Taobao"] }, { render: () => ["a", { style: { color: "green" } }, "Ich möchte zum JD."] }, { render: () => ["a", { style: { color: "pink" } }, "Ich möchte zu Baidu"] }, ]; Dies ist in tsx geschrieben: { dies.opt.map((it) => { return h(...it.render()) }) } Sie können eine schicke Seite rendern. Wir können auch so spielen: // TSX-Transformation <span> { dies.opt.map((it) => { gib es zurück.render(h) }) } </span> Wir können dies auf der Seite index.vue tun: // index.vue private Liste = [ { rendern: (h: ErstelleElement) => h("a", { style: { color: "red", marginRight: "5px" } }, "Ich möchte zu Taobao"), }, { rendern: (h: ErstelleElement) => h("a", { style: { color: "green", marginRight: "5px" } }, "Ich möchte zum JD"), }, { rendern: (h: ErstelleElement) => h("a", { style: { color: "pink", marginRight: "5px" } }, "Ich möchte zu Baidu"), }, ]; Das Ergebnis ist das gleiche Phantasie Wir können auch unsinnige Etiketten rendern! // index.vue-Transformation { rendern: (h: ErstelleElement) => H( "h1", { Stil: { Farbe: "grün", rechter Rand: "5px" }, }, „Ich gehe zum JD.“ ), }, Wir können Ereignisse in der Rendering-Funktion beliebig definieren: // index.vue private Liste = [ { rendern: (h: ErstelleElement) => H( "A", { Stil: { Farbe: "rot", rechter Rand: "5px" }, An: { klick: () => this.iWillGoWhere("TB"), }, }, „Ich möchte zu Taobao“ ), }] iWillGoWhere(Typ: Zeichenfolge) { const goWhere: beliebig = { TB: () => { alert("Ich gehe zu Taobao!"); }, JD: () => { alert("Ich gehe zum JD!"); }, BD: () => { alert("Ich möchte zu Baidu!"); }, }; geheWohin[Typ](); } Das ist es! Dies ist das Ende dieses Artikels zum Schreiben von React in einem Vue-Projekt. Weitere Informationen zum Schreiben von React in einem Vue-Projekt finden Sie in früheren Artikeln auf 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 Analyse der MySQL-Optimierung von like und = Leistung
>>: So setzen Sie das Root-Passwort in Linux mysql-5.6 zurück
1. CSS-Boxmodell Die Box beinhaltet: Rand, Rahmen...
Einfache Anwendungsbereitstellung 1. Verzeichniss...
Umfeld Hostname IP-Adresse Aufschlag Jenkins 192....
Inhaltsverzeichnis Vorbereitung Installieren Sie ...
Vorwort Führen Sie den Befehl show create table &...
#include <linux/moduleparam.h> 1. Modulpara...
Standardmäßig unterscheidet MySQL unter Linux zwi...
Globale Nginx-Variablen Es gibt viele globale Var...
Inhaltsverzeichnis 1. Ändern Sie die Datei my.cnf...
Nach dem Zurücksetzen des Systems hatte die MySQL...
Was ist VNode In vue.js gibt es eine VNode-Klasse...
Inhaltsverzeichnis Vorwort Erstellungsschritte Er...
Inhaltsverzeichnis Benutzerverwaltung Neuen Benut...
Vorwort: Ich habe zuvor den offiziellen Proxy-Cac...
Laden Sie zunächst das Diagramm herunter 1. Deins...