Vorwort: Wenn wir Vue verwenden, verwenden und schreiben wir häufig einige benutzerdefinierte Plug-Ins und führen sie dann mit Nach dem Lesen dieses Artikels erfahren Sie:
Okay, ohne weitere Umschweife, fangen wir an! ! ! 1. Durchführung der Installation in Vuex&Vue-RouterHier sind zwei Fragen, über die Sie nachdenken sollten. Sie sind wie das Graben von Löchern. Ich werde sie unten einzeln beantworten:
Tatsächlich sind die Prinzipien beider gleich. Hier verwenden wir Klasse Router { Konstruktor(Optionen) { ... } } Router.install = Funktion(_Vue) { _Vue.mixin({ vorErstellen() { wenn (diese.$options.router) { _Vue.prototype.$router = diese.$options.router } } }) } Standardrouter exportieren;
Lassen Sie uns in diesem Fall ein mutiges Urteil fällen. Keine Sorge, wir haben gerade das erste Problem gelöst, jetzt füllen wir das zweite Loch. Normalerweise verwenden wir // router/index.js importiere VueRouter von „vue-router“; importiere Vue von „vue“; Vue.use(VueRouter); const _router = [ ... ] const Router = neuer VueRouter(_router); Standardrouter exportieren; // Haupt.js importiere Vue von „vue“; Router von „Router“ importieren; neuer Vue({ Router, ... }).$mount('#app'); Lassen Sie uns zunächst das ursprüngliche Beispiel analysieren.
beißen! ! ! Es wurden Elemente erkannt, also lasst uns eine kühne Vermutung anstellen. 2. Interne Implementierung der Installation in Vue Nachdem Sie die Verwendung der häufig verwendeten Bibliothek Exportfunktion initUse (Vue: GlobalAPI) { //Registriere eine auf der Instanz gemountete Use-Methode Vue.use = function (plugin: Function | Object) { // Array der aktuellen Plugins initialisieren const installedPlugins = (this._installedPlugins || (this._installedPlugins = [])) // Wenn dieses Plugin bereits registriert wurde, dann verarbeite es nicht if (installedPlugins.indexOf(plugin) > -1) { gib das zurück } ... // Jetzt kommt der Punkt! ! ! wenn (Typ des Plugins.install === 'Funktion') { // Wenn „install“ eine Funktion im Plugin ist, rufen Sie die Installationsmethode auf, zeigen Sie auf das Plugin und übergeben Sie eine Reihe von Parametern an plugin.install.apply(plugin, args). } sonst wenn (Typ des Plugins === 'Funktion') { // Wenn das Plugin selbst eine Funktion ist, behandeln Sie es als Installationsmethode, zeigen Sie auf das Plugin und übergeben Sie eine Reihe von Parametern an plugin.apply(null, args). } //Setze das Plugin in das Plugin-Array ein installedPlugins.push(plugin) gib das zurück } } Dieser Teil des Quellcodes ist sehr prägnant und gut lesbar. Das heißt, bei der Verwendung den Plugin-Typ bestimmen und Abschluss: Ich frage mich, ob Sie den Plug-In-Mechanismus von Vue besser verstehen? Tatsächlich können wir bei der Entwicklung von Plug-Ins Dies ist das Ende dieses Artikels über ein vertieftes Verständnis des Plug-In-Mechanismus und Das könnte Sie auch interessieren:
|
<<: Bei der Verwendung von mybatis-generator mit mysql8.0.3 in IDEA sind Fehler aufgetreten
>>: Ausführliche Erläuterung der gespeicherten MySQL-Prozeduren (in, out, inout)
Wie erreicht man Internationalisierung in React? ...
1. Umweltvorbereitung Die IP-Adresse jedes Contai...
Inhaltsverzeichnis Grundlegende Übersicht GTID on...
So implementieren Sie Textsymbole über CSS /*Symb...
1. Warum maxPostSize festlegen? Der Tomcat-Contai...
Inhaltsverzeichnis Vorwort Hauptimplementierungsc...
Inhaltsverzeichnis 1. Grundlegende Konzepte 2. En...
Was ist die Hauptfunktion von Docker? Derzeit gib...
Inhaltsverzeichnis 1. Einleitung 2. Analyse des f...
HTML: Titel Überschriften werden durch Tags wie &...
Inhaltsverzeichnis Vorwort Einführung Ngram-Vollt...
Wenn Sie die Größe und Anzahl der InnoDB-Redo-Log...
Ich habe hier mehrere Tomcats. Wenn ich sie gleic...
Isolationsstufe: Isolation ist komplizierter als ...
Inhaltsverzeichnis Überblick console.log konsole....