Vue: Bieten Sie erstklassige Unterstützung für die Aufteilung der Codebasis in Module

Erstellt am 4. Juli 2017  ·  4Kommentare  ·  Quelle: vuejs/vue

Welches Problem löst diese Funktion?

Von Angular 2 kommend, ist eine der Funktionen, die ich wirklich vermisse, die Verwendung von Modulen, um meine Codebasis in logische Einheiten zu unterteilen. Technisch kann ich dies in Vue immer noch tun, indem ich Folgendes als Router-Komponente bereitstelle:

import Vue from 'vue';
import { routes } from './routes';

export const LazyModule: Vue.ComponentOptions<Vue> = {
  render: r => {
    console.log('rendering');
    return r('router-view');
  },
  created: function() {
    this.$router.addRoutes(routes);
  }
};

Dies funktioniert, aber ich denke, es wäre intuitiver, wenn es eine klare Trennung zwischen einer Vue-Komponente und einem Modul gäbe. Insbesondere würde ein Modul keine Rendermethode bereitstellen.

Wie sieht die vorgeschlagene API aus?

Es hat hier gute Arbeit in Richtung dieses Ziels gegeben . Ich habe auch mein vorheriges Beispiel von "Modul" hier getestet.

Letztendlich könnten wir in Vue einige grundlegende Unterstützung erwarten und dann Vue Router und Vuex erlauben, sie zu erweitern.

Hilfreichster Kommentar

@patrickhousley , Sie können einen Blick darauf werfen:
Vue Async-Komponenten
Vue-Router Lazy Loading
Async-Module von Vuex (noch nicht zusammengeführt)

All dies mit ssr und pwa führt zu einem sehr praktischen Mechanismus zum Aufteilen von Code und zu hoher Leistung. Ich weiß, das ist viel, aber es wird wirklich einfach zu bedienen, wenn Sie etwas Übung haben.

Alle 4 Kommentare

@patrickhousley , Hallo, ich habe keine Erfahrung mit Angular 2, können Sie bitte versuchen zu beschreiben, was genau ein Modul ist und was ein Beispiel dafür ist?

IMO, in einem solchen Framework wie Vue/React versucht die Idee, (fast) alles auf Component Weise zu denken. Also ziehe ich es vor, Komponenten zusammenzusetzen, anstatt mit Module .

@jkzing Nachdem ich mir das genauer angesehen habe, würde ich zustimmen. Ich denke , was ich wirklich suche , könnte hier behandelt werden . Ehrlich gesagt möchte ich wirklich nur eine Möglichkeit haben, meine App sauber in Stücke aufzuteilen. Der Router kann dies bereits tun, jedoch nur auf Komponentenebene. Die Routen müssen immer noch statisch geladen werden, was das Lazy Loading großer Teile einer App etwas problematisch macht.

@patrickhousley , Sie können einen Blick darauf werfen:
Vue Async-Komponenten
Vue-Router Lazy Loading
Async-Module von Vuex (noch nicht zusammengeführt)

All dies mit ssr und pwa führt zu einem sehr praktischen Mechanismus zum Aufteilen von Code und zu hoher Leistung. Ich weiß, das ist viel, aber es wird wirklich einfach zu bedienen, wenn Sie etwas Übung haben.

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen

Verwandte Themen

bdedardel picture bdedardel  ·  3Kommentare

lmnsg picture lmnsg  ·  3Kommentare

julianxhokaxhiu picture julianxhokaxhiu  ·  3Kommentare

fergaldoyle picture fergaldoyle  ·  3Kommentare

6pm picture 6pm  ·  3Kommentare