Beste Lösung für eine leichte Datenbindungsmöglichkeit [geschlossen]

9

Ich habe eine einzelne Seitenanwendung, an der ich arbeite, in der sich eine Variable x aus vielen Gründen ändern kann. Ich möchte, dass der im DOM angezeigte Wert (das unten stehende div) immer mit dem Wert der Javascript-Variablen übereinstimmt.

Ich verstehe Frameworks wie eckig sind dafür gut, aber ich suche nach einer leichteren und einfachen Lösung. Ich benutze bereits JQuery und undscore.js auf der Seite, wenn das hilft.

%Vor%

Idealerweise möchte ich etwas, wo ich nur die Variable und das Element als Argumente bereitstellen muss. Zum Beispiel:

%Vor%     
corycorycory 26.08.2016, 14:15
quelle

2 Antworten

3

Mein Vorschlag besteht darin, eine spezielle Klasse zu erstellen, um diese Variablen einzukapseln. Es ist sehr leichte Lösung keine Intervalle und Wert zu beobachten.

%Vor%

Verwendung:

%Vor%

Überprüfen Sie das Beispiel in jsFiddle - Ссылка

    
Maciej Sikora 01.09.2016 20:30
quelle
0

Sie fragen nach einer einfachen Implementierung (keine großen Frameworks) eines Beobachtermusters, idealerweise einfach indem Sie den Variablennamen und die ID des Elements als Argumente angeben.

Was Sie verlangen, ist möglich, wenn wir die Funktion bind() so definieren, dass sie x wiederholt abfragt, um zu sehen, ob sie sich geändert hat. Beachten Sie, dass bind dann wie folgt aufgerufen werden muss:

%Vor%

Ein funktionierendes Beispiel:

%Vor% %Vor%

Ich persönlich würde ein leichtgewichtiges Publisher / Subscriber-Modul der Verwendung einer Abruffunktion vorziehen, aber das würde erfordern, dass die Zuweisung an die Variable x durch eine Funktion / Methode (irgendeine Art von Setter) gesteuert wird. Wenn Sie (Google) Observer Pattern oder Pub / Sub Pattern erforschen, werden Sie einfache Möglichkeiten finden, dies in viel weniger Code als ein großes Framework zu implementieren - aber wahrscheinlich nicht so leicht wie der Polling-Ansatz.

    
Tomas Langkaas 01.09.2016 19:38
quelle