Denne artikkelen er en speilartikkel om maskinoversettelse, vennligst klikk her for å hoppe til originalartikkelen.

Utsikt: 14505|Svare: 0

[Annet] Knockout Kom i gang og introduksjon

[Kopier lenke]
Publisert på 11.08.2017 12:24:27 | | |

Hva er Knockout.js?

Knockout er et flott Javascrip-bibliotekDet hjelper deg å lage et tekstrikt brukergrensesnitt med gode visnings- og redigeringsmuligheter, kun ved å bruke en klar og ren underliggende datamodell. Når som helst innholdet i ditt lokale UI må oppdateres automatisk (f.eks. avhengig av endringer i brukeratferd eller eksterne datakilder), kan KO enkelt implementeres og være veldig lett å vedlikeholde.

Viktige egenskaper ved KO:

Elegant avhengighetssporing – Hver gang datakildemodellen endres, kan den automatisk oppdatere det spesifiserte innholdet i brukergrensesnittet ditt.
Deklarativ binding – Den binder brukergrensesnittet ditt til datakildemodellen på en enkel og enkel måte, og du kan bruke hvilken som helst nestelt strukturmal for å bygge et komplekst dynamisk grensesnitt.
God skalerbarhet – en tilpasset oppførsel kan implementeres med noen enkle kodelinjer som bindes som en ny deklarasjon.
Andre fordeler:

Rent Javascrip{filtering}t-bibliotek – kompatibelt med alle server- og klientteknologier.
Det kan anvendes godt på eksisterende applikasjoner – uten behov for endringer i programmets hovedarkitektur.
Enkelhet – bare 13K etter Gzip-komprimering.
Kompatibel med alle større nettlesere (f.eks. 6+, Firefox 2+, Chrome, Safari og andre)
Et omfattende sett med spesifikasjoner (med atferdsdrevet utvikling) – dette betyr at de enkelt kan verifiseres i nye nettlesere eller plattformer.
Utviklere som er kjent med Ruby on Rails, Asp.net MVC eller andre MVC-teknologier kan oppleve at det er en MVC sanntidsform med en deklarativ syntaks. Med andre ord kan du tenke på KO som en måte å lage et brukergrensesnitt på ved å redigere JSON-data... Hva enn det gjør for deg.

Hvordan bruke den?

Den raskeste og morsomste måten å komme i gang på er gjennom interaktiv instruksjon, og når du har mestret de mest grunnleggende teknikkene og lært hver online instans, er du klar til å jobbe med prosjektene dine.

Konkurrerer KO og Jquery (prototype, osv.) med hverandre, eller kan de brukes sammen?

Alle elsker Jquery! Tidligere måtte vi tåle ulike inkonsistente DOM-objektmanipulasjons-API-metoder, og fremveksten av Jquery er et flott alternativ til de klønete rammeverkene fra tidligere, noe som gjør det fleksibelt og brukervennlig. Jquery er utmerket og enkel å bruke for manipulering av nettsideelementer og hendelseshåndtering, mens KO løser et annet problem.

Hvis UI-grensesnittet ditt er litt mer komplekst og inneholder noe av samme oppførsel, hvis du kun bruker Jquery, vil UI-en være mer kompleks og vanskelig enn du tror, og det vil være ganske dyrt å vedlikeholde. Tenk deg eksempelet med å vise en liste over elementer i en tabell, oppgi antall lister i tabellen, og aktivere "Legg til"-knappen når antall varelister er mindre enn 5, ellers deaktivert. Jquery har ikke et grunnleggende datamodellkonsept, så hvis du vil få ut antall prosjektlister, må du utlede fra tabell-/tr-/div-tallene. Hvis du trenger å vise datamengden i visse SPANS, bør du også huske å oppdatere teksten i SPAN når du legger til nye data. Selvfølgelig må du også huske at når totaltallet >=5, må du deaktivere Legg til-knappen. Deretter, hvis du vil implementere Delete-funksjonen, må du peke ut hvilket DOM-element som må endres etter at det er klikket.

Hvordan er det annerledes å gjøre det med Knockout?

Med KO blir alt veldig enkelt. Det lar deg enkelt skalere kompleksiteten i prosjektet ditt uten å bekymre deg for de resulterende datainkonsistensene. Den konverterer ganske enkelt dataene dine til et Javascrip{filter}t-array, og bruker deretter foreach for å binde dataarrayet til en tabell eller et sett med divs på siden. Hver gang dataarrayet endres, reagerer UI-en automatisk på endringen (du trenger ikke å angi hvordan en ny rad skal settes inn eller hvor), og resten er UI-datasynkroniseringen. For eksempel kan du erklære følgende SPAN for å vise datamengden:


Det er det! Du trenger ikke å skrive kode for å oppdatere den, oppdateringen avhenger av endringer i arrayet myItems. På samme måte avhenger aktivering og deaktivering av Add-knappen av lengden på arrayet myItems, som følger:


Etter det, hvis du trenger å implementere "Delete"-funksjonen, trenger du ikke spesifisere hvordan UI-elementene skal manipuleres, du må bare endre datamodellen.

Sammendrag: KO har ingen intensjon om å konkurrere med jQuery og andre lignende DOM-manipulasjonsrammeverk. KO gir en overordnet måte å korrelere datamodellen med brukergrensesnittet.KO avhenger ikke av jQuery i seg selv, men du kan bruke jQuery sammen, Levende og milde UI-endringer krever bruk av jQuery.

Ressurser:

http://www.aizhengli.com/knockoutjs/50/knockout.html

http://knockoutjs.com/




Foregående:RPC-tjenesterammeverket Dubbo vil bli offisielt vedlikeholdt og støttet
Neste:Baidu Maps fjerner opphavsrettsinformasjon om logoen
Ansvarsfraskrivelse:
All programvare, programmeringsmateriell eller artikler publisert av Code Farmer Network er kun for lærings- og forskningsformål; Innholdet ovenfor skal ikke brukes til kommersielle eller ulovlige formål, ellers skal brukerne bære alle konsekvenser. Informasjonen på dette nettstedet kommer fra Internett, og opphavsrettstvister har ingenting med dette nettstedet å gjøre. Du må fullstendig slette innholdet ovenfor fra datamaskinen din innen 24 timer etter nedlasting. Hvis du liker programmet, vennligst støtt ekte programvare, kjøp registrering, og få bedre ekte tjenester. Hvis det foreligger noen krenkelse, vennligst kontakt oss på e-post.

Mail To:help@itsvse.com