410 Stimmen

AngularJS: Warum ist ng-bind in Angular besser als {{}}?

Ich war bei einer der Angular-Präsentationen und eine Person im Meeting erwähnte, dass ng-bind besser ist als die {{}}-Bindung.

Einer der Gründe ist, dass ng-bind die Variable in die Watch-Liste einträgt und nur dann die Daten in die Ansicht übertragen werden, wenn sich das Modell ändert. Auf der anderen Seite interpoliert {{}} den Ausdruck jedes Mal (ich denke, es ist der Angular-Zyklus) und überträgt den Wert, egal ob sich der Wert geändert hat oder nicht.

Es wurde auch gesagt, dass, wenn Sie nicht viele Daten auf dem Bildschirm haben, Sie {{}} verwenden können und das Leistungsproblem nicht sichtbar wird. Kann mir jemand etwas Licht in diese Frage bringen?

4voto

Ambika Sukla Punkte 244

Dies liegt daran, dass der Angular-Compiler mit {{}} sowohl den Textknoten als auch dessen Elternknoten berücksichtigt, da eine Möglichkeit zum Zusammenführen von 2 {{}}-Knoten besteht. Daher gibt es zusätzliche Linker, die die Ladezeit erhöhen. Natürlich ist der Unterschied bei einigen Vorkommnissen unbedeutend, aber wenn Sie dies in einem Repeater mit einer großen Anzahl von Elementen verwenden, wird es sich in einer langsameren Laufzeitumgebung auswirken.

3voto

Vikas Kalapur Punkte 415

hier die Bildbeschreibung eingeben

Der Grund, warum Ng-Bind besser ist, liegt darin, dass

Wenn Ihre Seite nicht geladen ist oder wenn Ihr Internet langsam ist oder wenn Ihre Website nur halb geladen ist, können Sie diese Art von Problemen sehen (Überprüfen Sie den Screenshot mit dem Lesepunkt), der auf dem Bildschirm ausgelöst wird, was völlig seltsam ist. Um dies zu vermeiden, sollten wir Ng-Bind verwenden.

1voto

Hazarapet Tunanyan Punkte 2711

ng-bind hat auch seine Probleme. Wenn Sie versuchen, Angular-Filter, Limit oder etwas anderes zu verwenden, können Sie möglicherweise Probleme haben, wenn Sie ng-bind verwenden. In anderen Fällen ist ng-bind jedoch besser auf der UX-Seite. Wenn der Benutzer eine Seite öffnet, sieht er (10 ms-100 ms), dass Symbole gedruckt werden ({{ ... }}). Deshalb ist ng-bind besser.

1voto

GAURAV ROY Punkte 1875

Es gibt ein Problem mit Flackern in {{ }}, wie z.B. wenn Sie die Seite neu laden, wird der Ausdruck für kurze Zeit angezeigt. Daher sollten wir anstelle von Ausdrücken zur Datenveranschaulichung ng-bind verwenden.

0voto

raneshu Punkte 353

ng-bind ist auch sicherer, weil es html als Zeichenkette darstellt.

Beispielsweise wird '' als Zeichenkette angezeigt und nicht ausgeführt.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X