Vue: Stoppen Sie die Template-Engine vom Rendern eines Blocks

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

Welches Problem löst diese Funktion?

Wenn es eine Möglichkeit gäbe, die Vorlagenkompilierung daran zu hindern, einen Block in der übergeordneten Vue Instanz zu rendern, und stattdessen eine andere Vue Instanz oder eine andere Vorlagen-Engine die Arbeit wie die Django Vorlage ausführen zu lassen Engine verwendet das Tag verbatim . In meinem Fall möchte ich viele Vue Instanzen innerhalb einer Seite verwenden und sie können verschachtelt sein. Beachten Sie, dass ich keine Komponenten verwenden kann, da die Seite in Fragmente unterteilt und an verschiedenen Stellen gerendert wird.

Wie sieht die vorgeschlagene API aus?

Ich kenne keinen genauen und sauberen Weg, aber ich dachte an etwas wie Django wörtlich

Hilfreichster Kommentar

Ich würde es einfach vermeiden, Vorlagen wie diese zu mischen - mounten Sie stattdessen die andere Instanz (mit in-js-Vorlagenzeichenfolge) auf ein leeres Element. Wie auch immer, ich glaube nicht, dass wir eine solche API hinzufügen würden, da der Anwendungsfall viel zu nischenhaft ist.

Alle 3 Kommentare

Ich denke, das würde aufgrund der Funktionsweise des aktuellen virtuellen Doms zu viel Code führen. Aber Sie können immer noch etwas Ähnliches tun, wenn Sie Ihre Vue-Apps in benutzerdefinierte Elemente "transformieren". Dann wird jede App einem eigenen Schattendom zugeordnet.

custom elements löst das Problem nicht, es sei denn, ich verwende ignoreElements of Vue config.

Ich würde es einfach vermeiden, Vorlagen wie diese zu mischen - mounten Sie stattdessen die andere Instanz (mit in-js-Vorlagenzeichenfolge) auf ein leeres Element. Wie auch immer, ich glaube nicht, dass wir eine solche API hinzufügen würden, da der Anwendungsfall viel zu nischenhaft ist.

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen