
vor kurzem in einem solchen Problem in einem Projekt, in unserem System, es gibt ein Projektkonzept, Benutzer können mehrere Projekte erstellen, jedes Projekt hat mehrere Umgebungen, wenn der Benutzer klickt auf den Projektnamen, wird ein Projekt in der Innenseite, die linke Menüleiste wird die Umgebung wechseln Funktion. In jeder Umgebung gibt es viele Ressourcen, wie Artikel, Benutzer, Rollen und Fließlinien.
Nach dem Wechsel der Umgebung eines Projekts wird dann verlangt, auf der aktuellen Seite zu bleiben und Artikel, Benutzer, Rollen usw. in der aktuellen Umgebung zu erhalten. Die Routing sieht ungefähr so aus/p/pid/e/eid/job: pid ist die Projektid und eid die Umgebungsid. Wenn Sie die Umgebung wechseln, wird nur dereidParametern.
Zunächst habe ich das Konzept entworfen, die eid in der Routing zu aktualisieren, wenn die Umgebung wechselt, und dann auf jeder Seite, die aktualisiert werden muss, watch route.params.eidDas bedeutet, dass die Daten der Seite neu geladen oder initialisiert werden. Diese Regelung hat Vorteile und Nachteile, Vorteile, wenn jede Seite kann nach dem Umschalten der Umgebung eine separate Seitenlogik verarbeiten, für öffentliche Daten, dh nicht abhängig von der Umgebung Schnittstelle Daten, müssen nicht neu geladen werden. Der Nachteil ist, dass manchmal die Arbeitsbelastung relativ groß ist, insbesondere wenn die aktuelle Seite mit mehr Variablen in der Mitte ist.
Der Plan meines Kollegen war, beim Umschalten der Umgebung zuerst auf eine leere Seite zu springen, auf der sie umgeleitet werden. Damit wird die aktuelle Seite neu geladen. Das macht nur wenige Änderungen, aber durch das Hinzufügen einer mittleren Umleitungskomponente kann es zu vielen unerwarteten Situationen führen, wie Weißbildschirme, Verwirrung der Routing und zusätzliche redundante Komponenten. Ich finde das Programm sehr niedrig. Da ich damals kein besseres Programm hatte, habe ich dieses Projekt zuerst verfolgt. Es gibt nicht viel Zeit, um andere Dinge zu studieren.
Später habe ich ein schönes Programm gefunden, das ineKatalog, erstelleneidundeid.vueerstellt. Dann gibt es nur eine routerview-Komponente in eid.vue, um die spezifischen Inhalte des eid-Verzeichnisses zu rendern. Der wichtigste Punkt ist die Einstellung:key="route.params.eid"in der Routerview-Komponente, da die Schlüssel unterschiedlich sind, wird view als zwei verschiedene Knoten betrachtet und neu gerendert.
So wird der Routerview neu gerendert, sobald sich die eid in der Routing ändert, sodass die unteren Artikel, die Benutzerkomponenten, neu gerendert werden. Das ist das eleganteste Programm, das ich bisher gefunden habe.
Antwort veröffentlichen