suchen
HeimWeb-Frontendjs-TutorialSo funktionieren Text- und Darstellungsbindungen in KnockoutJs

Como funcionam Bindings de Texto e Aparência no KnockoutJs

Dieser Inhalt ist im Grunde eine Übersetzung der Originalmaterialien. Ziel ist es, mehr über KnockoutJs für Magento 2 zu erfahren und Inhalte auf Portugiesisch über KnockouJs zu erstellen.

Dokumentation

  • Die Datenbindungssyntax
  • Bindungskontext
  • Die „sichtbaren“ und „versteckten“ Bindungen
  • Die „Text“-Bindung
  • Die „HTML“-Bindung
  • Die „class“- und „css“-Bindungen
  • Die „Stil“-Bindung
  • Die „attr“-Bindung

Bindungen

In KnockoutJs sind Bindungen die Möglichkeit, die Logik des ViewModel (die Daten- und Geschäftslogik) mit der Ansicht (HTML) zu verbinden. Kurz gesagt: Durch Bindungen spiegelt die Benutzeroberfläche automatisch Änderungen in Ihren Daten wider, ohne dass das DOM direkt manipuliert werden muss.

Bindungen in KnockoutJs funktionieren über das data-bind-Attribut für HTML-Elemente. In diesem Attribut geben Sie die Bindung an, die Sie verwenden möchten, und die zugehörigen Werte.

Steuern von Text und Aussehen

Sichtbar

Die Bindung sichtbar wird verwendet, um die Sichtbarkeit von HTML-Elementen basierend auf dem Wert eines observable in seinem ViewModel zu steuern. Es ermöglicht Ihnen, Elemente basierend auf einer bestimmten Bedingung anzuzeigen oder auszublenden, die in Ihrem ViewModel.
definiert ist

<div>
  <p data-bind="visible: isContentVisible">Este parágrafo está visível se isContentVisible for true.</p>
</div>

Wenn die Bedingung einen ähnlichen Wert wie „false“ hat (falsch, 0, null oder undefiniert), setzt die sichtbare Bindung den Stil auf „Keine“, wodurch er ausgeblendet wird. Dies hat Vorrang vor allen Anzeigestilen, die Sie mit CSS festlegen können.

Versteckt

Binding Hidden wird verwendet, um HTML-Elemente basierend auf dem Wert eines Observable aus Ihrem ViewModel auszublenden. Im Gegensatz zur *visible*-Bindung, die die Sichtbarkeit von Elementen steuert, verbirgt die *hidden*-Bindung UI-Elemente, wenn die angegebene Bedingung erfüllt ist.

<div>
  <p data-bind="hidden: isContentHidden">Este parágrafo está oculto se isContentHidden for true.</p>
</div>

Text

Der Binding-Text wird verwendet, um den Inhalt von HTML-Elementen mit dem Wert eines Observable aus seinem ViewModel zu aktualisieren. Dadurch kann der Text eines Observablen direkt in das HTML-Element eingefügt werden, wodurch sichergestellt wird, dass jede Änderung des Werts des Observablen automatisch im angezeigten Text widergespiegelt wird.

<div>
  <p data-bind="text: message">Este parágrafo exibirá o conteúdo do observable 'message'.</p>
    <p data-bind="text: 'Total: $' + totalAmount() + ' USD'">Este parágrafo exibirá o total formatado com base no valor do observable 'totalAmount'.</p>
    <p data-bind="text: 'Olá, ' + userName()">Este parágrafo saudará o usuário com base no valor do observable 'userName'.</p>
</div>

Wenn dieser Parameter ein beobachtbarer Wert ist, aktualisiert die Bindung den Text des Elements, wann immer sich der Wert ändert. Wenn der Parameter nicht observable ist, wird der Elementtext nur einmal festgelegt und später nicht erneut aktualisiert.

Wenn der angegebene Wert etwas anderes als eine Zahl oder eine Zeichenfolge ist, entspricht der angezeigte Text yourParameter.toString().

Da diese Bindung ihren Textwert mithilfe eines Textknotens festlegt, ist es sicher, einen beliebigen Zeichenfolgenwert festzulegen, ohne das Risiko einer HTML- oder Skriptinjektion einzugehen.

HTML

Binding HTML wird verwendet, um dynamische HTML-Inhalte in Ihre UI-Elemente einzufügen. Es ermöglicht die Aktualisierung des Inhalts eines Elements mit dem HTML, das aus einem observable oder einem Ausdruck aus seinem ViewModel generiert wurde.

<div>
  <p data-bind="visible: isContentVisible">Este parágrafo está visível se isContentVisible for true.</p>
</div>

KnockoutJs löscht den vorherigen Inhalt und setzt dann den Elementinhalt auf den Parameterwert, indem es die HTML-Funktion von jQuery verwendet oder den String in HTML-Knoten analysiert und jeden Knoten als untergeordnetes Element des Elements anhängt, wenn dies bei jQuery nicht der Fall ist verfügbar.

Wenn es sich bei diesem Parameter um eine observable handelt, aktualisiert die Bindung den Inhalt des Elements, wann immer sich der Wert ändert. Wenn der Parameter nicht observable ist, wird der Inhalt des Elements nur einmal festgelegt und später nicht erneut aktualisiert.

Wenn der angegebene Wert etwas anderes als eine Zahl oder eine Zeichenfolge ist, entspricht der angezeigte Text yourParameter.toString().

Klasse

Die Binding-Klasse wird verwendet, um CSS-Klassen zu steuern, die auf HTML-Elemente angewendet werden, basierend auf dem Wert eines Observable oder einem Ausdruck seines ViewModel. Dadurch können Sie die CSS-Klassen eines Elements basierend auf unterschiedlichen Bedingungen oder Zuständen Ihrer Anwendung dynamisch ändern. Eine Klasse ist kein gültiger Bezeichnername. Die korrekte Art und Weise, einem HTML-Element eine Klasse zuzuweisen, besteht darin, den Bezeichnernamen in Anführungszeichen zu setzen, sodass er zu einer literalen Zeichenfolge wird.

<div>
  <p data-bind="hidden: isContentHidden">Este parágrafo está oculto se isContentHidden for true.</p>
</div>

Der Parameterwert muss ein String sein, der der/den CSS-Klasse(n) entspricht, die Sie dem Element hinzufügen möchten. Wenn der Parameter auf ein Observable verweist, aktualisiert die Bindung die Klassen bei jeder Wertänderung, entfernt alle zuvor hinzugefügten Klassen und fügt die Klasse(n) des neuen Werts hinzu.

CSS

Binding CSS wird verwendet, um CSS-Stile dynamisch auf HTML-Elemente anzuwenden, basierend auf dem Wert eines Observable oder einem Ausdruck seines ViewModel. Dadurch können Sie die visuellen Stile eines Elements basierend auf unterschiedlichen Bedingungen oder Zuständen Ihrer Anwendung ändern. Sie können mehrere CSS-Klassen basierend auf derselben Bedingung definieren, indem Sie die Namen in Anführungszeichen setzen.

<div>
  <p data-bind="text: message">Este parágrafo exibirá o conteúdo do observable 'message'.</p>
    <p data-bind="text: 'Total: $' + totalAmount() + ' USD'">Este parágrafo exibirá o total formatado com base no valor do observable 'totalAmount'.</p>
    <p data-bind="text: 'Olá, ' + userName()">Este parágrafo saudará o usuário com base no valor do observable 'userName'.</p>
</div>

Es muss ein JavaScript-Objekt übergeben werden, in dem die Eigenschaftsnamen Ihre CSS-Klassen sind und deren Werte je nachdem, ob die Klasse zu diesem Zeitpunkt angewendet werden soll, als wahr oder falsch ausgewertet werden.

Wenn der Parameter auf einen observable-Wert verweist, fügt die Bindung die CSS-Klasse hinzu oder entfernt sie, wenn sich das observable ändert. Wenn der Parameter nicht auf ein Observable verweist, wird die Klasse nur einmal hinzugefügt oder entfernt und dies später nicht noch einmal.

Stil

Der Binding-Stil wird verwendet, um Inline-CSS-Stile auf HTML-Elemente anzuwenden, basierend auf dem Wert eines Observable oder einem Ausdruck seines ViewModel. Dadurch können Sie die visuellen Stile eines Elements direkt inline ändern, basierend auf verschiedenen Bedingungen oder Zuständen Ihrer Anwendung.

<div>
  <p data-bind="visible: isContentVisible">Este parágrafo está visível se isContentVisible for true.</p>
</div>

Es muss ein JavaScript-Objekt übergeben werden, in dem die Eigenschaftsnamen den Stilnamen und die Werte den Werten der Stile entsprechen, die Sie anwenden möchten.

Wenn der Parameter auf ein Observable verweist, aktualisiert die Bindung die Stile immer dann, wenn sich das Observable ändert. Wenn der Parameter nicht auf ein Observable verweist, werden die Stile nur einmal festgelegt und später nicht aktualisiert.

Wenn Sie einen Stil anwenden möchten, dessen Name kein zulässiger JavaScript-Bezeichner ist (weil er einen Bindestrich oder ähnliches enthält), können Sie ihn in Anführungszeichen setzen oder den Namen mit camelCase verwenden Stil.

  • { 'font-weight': someValue }
  • {fontWeight: someValue }

Wenn Sie einen einfachen numerischen Wert auf einen Stil anwenden, der eine Einheit erfordert, hängt KnockoutJs px an den Wert an, bevor der Stil festgelegt wird.

Attr

Das Binding-Attribut wird verwendet, um HTML-Attribute für Elemente basierend auf dem Wert eines observable- oder eines ViewModel-Ausdrucks festzulegen oder zu aktualisieren. Dadurch können Sie die Attribute von HTML-Elementen dynamisch ändern, basierend auf unterschiedlichen Bedingungen oder Zuständen Ihrer Anwendung.

<div>
  <p data-bind="hidden: isContentHidden">Este parágrafo está oculto se isContentHidden for true.</p>
</div>

Es muss ein JavaScript-Objekt übergeben werden, in dem die Eigenschaftsnamen den Attributnamen und die Werte den Werten der Attribute entsprechen, die Sie anwenden möchten.

Wenn der Parameter auf ein Observable verweist, aktualisiert die Bindung das Attribut immer dann, wenn sich das Observable ändert. Wenn der Parameter nicht auf ein Observable verweist, legt er das Attribut nur einmal fest und aktualisiert es später nicht.

Das obige ist der detaillierte Inhalt vonSo funktionieren Text- und Darstellungsbindungen in KnockoutJs. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Python gegen JavaScript: Eine vergleichende Analyse für EntwicklerPython gegen JavaScript: Eine vergleichende Analyse für EntwicklerMay 09, 2025 am 12:22 AM

Der Hauptunterschied zwischen Python und JavaScript sind die Typ -System- und Anwendungsszenarien. 1. Python verwendet dynamische Typen, die für wissenschaftliche Computer- und Datenanalysen geeignet sind. 2. JavaScript nimmt schwache Typen an und wird in Front-End- und Full-Stack-Entwicklung weit verbreitet. Die beiden haben ihre eigenen Vorteile bei der asynchronen Programmierung und Leistungsoptimierung und sollten bei der Auswahl gemäß den Projektanforderungen entschieden werden.

Python vs. JavaScript: Auswählen des richtigen Tools für den JobPython vs. JavaScript: Auswählen des richtigen Tools für den JobMay 08, 2025 am 12:10 AM

Ob die Auswahl von Python oder JavaScript vom Projekttyp abhängt: 1) Wählen Sie Python für Datenwissenschafts- und Automatisierungsaufgaben aus; 2) Wählen Sie JavaScript für die Entwicklung von Front-End- und Full-Stack-Entwicklung. Python ist für seine leistungsstarke Bibliothek in der Datenverarbeitung und -automatisierung bevorzugt, während JavaScript für seine Vorteile in Bezug auf Webinteraktion und Full-Stack-Entwicklung unverzichtbar ist.

Python und JavaScript: Verständnis der Stärken der einzelnenPython und JavaScript: Verständnis der Stärken der einzelnenMay 06, 2025 am 12:15 AM

Python und JavaScript haben jeweils ihre eigenen Vorteile, und die Wahl hängt von den Projektbedürfnissen und persönlichen Vorlieben ab. 1. Python ist leicht zu erlernen, mit prägnanter Syntax, die für Datenwissenschaft und Back-End-Entwicklung geeignet ist, aber eine langsame Ausführungsgeschwindigkeit hat. 2. JavaScript ist überall in der Front-End-Entwicklung und verfügt über starke asynchrone Programmierfunktionen. Node.js macht es für die Entwicklung der Vollstapel geeignet, die Syntax kann jedoch komplex und fehleranfällig sein.

JavaScripts Kern: Ist es auf C oder C aufgebaut?JavaScripts Kern: Ist es auf C oder C aufgebaut?May 05, 2025 am 12:07 AM

JavaScriptisnotbuiltoncorc; Es ist angehört, dass sich JavaScriptWasdedeSthatrunsonGineoFtencninc.

JavaScript-Anwendungen: Von Front-End bis Back-EndJavaScript-Anwendungen: Von Front-End bis Back-EndMay 04, 2025 am 12:12 AM

JavaScript kann für die Entwicklung von Front-End- und Back-End-Entwicklung verwendet werden. Das Front-End verbessert die Benutzererfahrung durch DOM-Operationen, und die Back-End-Serveraufgaben über node.js. 1. Beispiel für Front-End: Ändern Sie den Inhalt des Webseitentextes. 2. Backend Beispiel: Erstellen Sie einen Node.js -Server.

Python vs. JavaScript: Welche Sprache sollten Sie lernen?Python vs. JavaScript: Welche Sprache sollten Sie lernen?May 03, 2025 am 12:10 AM

Die Auswahl von Python oder JavaScript sollte auf Karriereentwicklung, Lernkurve und Ökosystem beruhen: 1) Karriereentwicklung: Python ist für die Entwicklung von Datenwissenschaften und Back-End-Entwicklung geeignet, während JavaScript für die Entwicklung von Front-End- und Full-Stack-Entwicklung geeignet ist. 2) Lernkurve: Die Python -Syntax ist prägnant und für Anfänger geeignet; Die JavaScript -Syntax ist flexibel. 3) Ökosystem: Python hat reichhaltige wissenschaftliche Computerbibliotheken und JavaScript hat ein leistungsstarkes Front-End-Framework.

JavaScript -Frameworks: Stromversorgung moderner WebentwicklungJavaScript -Frameworks: Stromversorgung moderner WebentwicklungMay 02, 2025 am 12:04 AM

Die Kraft des JavaScript -Frameworks liegt in der Vereinfachung der Entwicklung, der Verbesserung der Benutzererfahrung und der Anwendungsleistung. Betrachten Sie bei der Auswahl eines Frameworks: 1. Projektgröße und Komplexität, 2. Teamerfahrung, 3. Ökosystem und Community -Unterstützung.

Die Beziehung zwischen JavaScript, C und BrowsernDie Beziehung zwischen JavaScript, C und BrowsernMay 01, 2025 am 12:06 AM

Einführung Ich weiß, dass Sie es vielleicht seltsam finden. Was genau muss JavaScript, C und Browser tun? Sie scheinen nicht miteinander verbunden zu sein, aber tatsächlich spielen sie eine sehr wichtige Rolle in der modernen Webentwicklung. Heute werden wir die enge Verbindung zwischen diesen drei diskutieren. In diesem Artikel erfahren Sie, wie JavaScript im Browser ausgeführt wird, die Rolle von C in der Browser -Engine und wie sie zusammenarbeiten, um das Rendern und die Interaktion von Webseiten voranzutreiben. Wir alle kennen die Beziehung zwischen JavaScript und Browser. JavaScript ist die Kernsprache der Front-End-Entwicklung. Es läuft direkt im Browser und macht Webseiten lebhaft und interessant. Haben Sie sich jemals gefragt, warum Javascr

See all articles

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Nordhold: Fusionssystem, erklärt
3 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌
Mandragora: Flüstern des Hexenbaum
3 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

SecLists

SecLists

SecLists ist der ultimative Begleiter für Sicherheitstester. Dabei handelt es sich um eine Sammlung verschiedener Arten von Listen, die häufig bei Sicherheitsbewertungen verwendet werden, an einem Ort. SecLists trägt dazu bei, Sicherheitstests effizienter und produktiver zu gestalten, indem es bequem alle Listen bereitstellt, die ein Sicherheitstester benötigen könnte. Zu den Listentypen gehören Benutzernamen, Passwörter, URLs, Fuzzing-Payloads, Muster für vertrauliche Daten, Web-Shells und mehr. Der Tester kann dieses Repository einfach auf einen neuen Testcomputer übertragen und hat dann Zugriff auf alle Arten von Listen, die er benötigt.

Dreamweaver Mac

Dreamweaver Mac

Visuelle Webentwicklungstools

MinGW – Minimalistisches GNU für Windows

MinGW – Minimalistisches GNU für Windows

Dieses Projekt wird derzeit auf osdn.net/projects/mingw migriert. Sie können uns dort weiterhin folgen. MinGW: Eine native Windows-Portierung der GNU Compiler Collection (GCC), frei verteilbare Importbibliotheken und Header-Dateien zum Erstellen nativer Windows-Anwendungen, einschließlich Erweiterungen der MSVC-Laufzeit zur Unterstützung der C99-Funktionalität. Die gesamte MinGW-Software kann auf 64-Bit-Windows-Plattformen ausgeführt werden.

SublimeText3 Englische Version

SublimeText3 Englische Version

Empfohlen: Win-Version, unterstützt Code-Eingabeaufforderungen!

WebStorm-Mac-Version

WebStorm-Mac-Version

Nützliche JavaScript-Entwicklungstools