AngularJS er et relativt nytt JavaScript-rammeverk av Google, designet for å gjøre utviklingen din så enkelt som mulig. Det er mange rammer og plugins tilgjengelig. Som sådan kan det noen ganger være vanskelig å sile gjennom all støyen for å finne nyttige verktøy.
Her er tre grunner til at du kan velge AngularJS for ditt neste prosjekt.
Angular er bygget og vedlikeholdt av dedikerte Google ingeniører.
Dette kan virke åpenbart, men det er viktig å huske at mange (ikke alle) rammer er laget av hobbyister i open source-samfunnet. Mens lidenskap og kjøring har smidd rammeverk, som Cappucino og Knockout, er Angular bygget og vedlikeholdt av dedikert (og svært talentfulle) Google ingeniører. Dette betyr at du ikke bare har et stort åpent fellesskap å lære av, men du har også dyktige, høyt tilgjengelige ingeniører som er opptatt av å hjelpe deg med å få dine svingete spørsmål besvart.
Dette er ikke Googles første forsøk på et JavaScript-rammeverk; De utviklet først sin omfattende Web Toolkit, som samler Java ned til JavaScript, og ble brukt av Google Wave-teamet i stor utstrekning. Med fremveksten av HTML5, CSS3 og JavaScript, innså Google at både websiden og back-end-språket var at nettet ikke var ment å være skrevet bare i Java.
AngularJS kom til å standardisere webapplikasjonsstrukturen og gi en fremtidig mal for hvordan applikasjoner på klientsiden skal utvikles.
Versjon 1.0 ble utgitt bare under 6 måneder siden (per desember 2012) og brukes av en rekke applikasjoner, alt fra hobby til kommersielle produkter. Vedtaket av AngularJS som et levedyktig rammeverk for utvikling av kundesiden blir raskt kjent med hele webutviklingssamfunnet.
Fordi AngularJS er bygd av Google, kan du være sikker på at du har å gjøre med effektiv og pålitelig kode som skaleres med prosjektet. Hvis du er ute etter et rammeverk med et solid fundament, er Angular ditt valg!
Hvis du er kjent med prosjekter, som QUnit, Mocha eller Jasmine, så har du ingen problemer med å lære Angular's unit testing API.
Vinkelformet, ligner Ryggraden eller JavaScriptMVC, er en komplett løsning for rask utvikling i fronten. Ingen andre plugins eller rammer er nødvendige for å bygge en data-drevet webapplikasjon. Her er en oversikt over Angular's stand-out funksjoner:
$ omfang
gjenstand.hoved()
ring for å utføre koden din. merker med liten semantisk klarhet. Du må opprette omfattende og uttømmende CSS-klasser for å uttrykke hensikten med hvert objekt i DOM. Med Angular kan du bruke HTML som XML, noe som gir deg uendelige muligheter for tagger og attributter. Angular oppnår dette, via HTML-kompilatoren og bruken av direktiver for å utløse atferd basert på den nyopprettede syntaksen du skriver. - Gjør HTML til din mal. Hvis du er vant til mustache eller Hogan.js, så kan du quckly gripe brakets syntaks av Angular's templating motor, fordi det er bare HTML. Angular krysser DOM for disse malene, som inneholder de ovennevnte retningslinjene. Malerne sendes deretter til AngularJS-kompilatoren som DOM-elementer, som kan utvides, utføres eller gjenbrukes. Dette er nøkkelen, fordi nå har du rå DOM-komponenter, i stedet for strenge, som tillater direkte manipulering og utvidelse av DOM-treet.
- Bedriftsnivåtesting. Som angitt ovenfor krever AngularJS ingen tilleggsrammer eller plugins, inkludert testing. Hvis du er kjent med prosjekter, som QUnit, Mocha eller Jasmine, så har du ingen problemer med å lære Angular's unit-testing API og Scenario Runner, som veileder deg gjennom å gjennomføre testene dine så nær selve produksjonsapplikasjonen som mulig.
Dette er de grunnleggende prinsippene som styrer AngularJS for å skape en effektiv, ytelsesdrevet og vedlikeholdsbar frontend-kodebase. Så lenge du har en kilde til lagring av data, kan AngularJS gjøre alt tungt løft på klienten, samtidig som du gir en rik og rask opplevelse for sluttbrukeren..
3 - Kom i gang i minutter
Å komme i gang med AngularJS er utrolig enkelt. Med noen attributter som er lagt til i HTML-en din, kan du få en enkel Angular app opp på under 5 minutter!
- Legg til
ng-app
direktiv til
tag så kantet vet å kjøre på siden: - Legg til vinkelen
tag to the end of your
tag: … meta and stylesheet tags…
- Legg til vanlig HTML. AngularJS-direktiver er tilgjengelige gjennom HTML-attributter, mens uttrykkene blir evaluert med dobbelt-brakettnotasjon:
Dagens aktiviteter
- Activity.name
De ng-kontrolleren
Direktivet oppretter et navneområde, hvor vi kan plassere vårt Angular JavaScript for å manipulere dataene og evaluere uttrykkene i HTML-koden vår. ng-repeat
er et Angular repeater-objekt, som instruerer Angular å fortsette å lage listelementer så lenge vi har aktiviteter som skal vises, og bruk dette
element som en mal for hvordan vi vil at alle skal se.
- Når du vil ta tak i noe fra Angular, hent dataene dine med en JavaScript-fil som inneholder en funksjon hvis navn tilsvarer kontrolleren du har skissert i HTML-koden din:
FunksjonListCtrl ($ omfang) $ scope.activities = ["name": "Wake up", "navn": "Borste tenner", "navn": "Dusj", "navn" "Ta med på mat", "navn": "Gå på jobb", "navn": "Skriv en nettsideartikkel", "navn": "Gå til treningsstudioet", "navn" Møt venner ", " navn ":" Gå til sengs "];
Som nevnt tidligere lager vi en funksjon med samme navn som ng-kontrolleren
direktivet, så vår side kan finne den tilsvarende vinkelfunksjonen for å initialisere og utføre koden vår med dataene vi ønsker å ta tak i. Vi passerer i $ omfang
parameter for å få tilgang til malens aktiviteter
liste som vi opprettet i vår HTML-visning. Vi gir deg et grunnleggende sett med aktiviteter med nøkkelen, Navn
, svarende til aktivitet
s eiendom Navn
som vi opplistet i notatboksen, og en verdi, som er en streng som representerer aktivitetene vi vil oppnå i dag.
- Mens denne applikasjonen er fullført, er den ikke altfor praktisk. De fleste webapplikasjoner inneholder mange data lagret på eksterne servere. Hvis du har dataene dine lagret på en server et sted, kan vi enkelt erstatte arrayet med en samtale fra Angular's AJAX API:
funksjon Activity $ scope.activities = data;
Vi har rett og slett erstattet det innfødte JavaScript-arrayobjektet med hashes med en spesialisert HTTP GET-funksjon, levert av Angular API. Vi passerer i navnet på filen vi ser for å hente fra serveren (i dette tilfellet en JSON-fil med aktiviteter) og vi returneres et løfte fra Angular, mye på samme måte som løfte mønsteret fungerer i jQuery.
Lær mer om løfter i jQuery her på Nettuts+.
Dette løftet kan da utføre vår suksess
Fungerer når dataene er returnert, og alt vi må gjøre er å binde returdataene til våre aktiviteter, som som tidligere nevnt, ble gitt av avhengighetsinjeksjon via $ omfang
parameter.
En statisk oppgaveliste er fin, men den virkelige kraften stammer fra hvor lett vi kan manipulere siden uten å måtte sette opp en haug med JavaScript-funksjoner for å lytte og svare på brukerinteraksjoner. Tenk deg at vi må sortere aktivitetslisten vår alfabetisk. Vel, vi legger ganske enkelt til en rullegardinvelger slik at brukeren kan sortere listen:
Sortere:
Legg til modell
Direktiv til rullegardinmenyen:
Endelig endrer vi
tag for å gjenkjenne sortModel
som en måte å bestille vår liste på:
-
Alle de tunge løftene er intelligent utført av AngularJS.
Og det er det! Hemmeligheten er filteret vi har lagt til i ng-repeat
direktiv i listeposten. De rekkefølge etter
filter tar en inngangsgruppe (vår liste over aktiviteter), kopierer den og reorders den kopien av egenskapen som er skissert i å velge
stikkord. Det er ingen tilfeldighet at verdien av egenskapen til alternativ
tag er Navn
, Den samme verdien som er gitt av vår JSON-fil som egenskapen til en aktivitet
. Dette gjør det mulig for AngularJS å automatisere vår HTML-alternativverdien til et kraftig søkeord for å sortere vår aktivitetsmal.
Legg merke til hvordan vi ikke lytter etter brukerinteraksjonshendelser. Vår kode er ikke riddled med tilbakeringinger og hendelseshåndterere for å håndtere objekter vi har klikket på, valgt, berørt eller aktivert. All den tunge løftingen er intelligent utført av AngularJS for å finne kontrollfunksjonen, opprette avhengigheten mellom malen og kontrolleren, og hente dataene for å gjøre det på skjermen.
AngularJS gir en full og robust opplæring, som skaper en svært liknende webapp og utvider den enda mer - alt om noen minutter!
Konklusjon
AngularJS blir raskt det dominerende JavaScript-rammeverket for profesjonell webutvikling. Du kan finne mange AngularJS-skript og programmer på Envato Market for å hjelpe deg med å oppnå mer med Angular JS, for eksempel beskjæringsverktøy, nettbutikkmaler, vurderingsprogrammer og mer.
AngularJS skript og programmer på Envato MarketI denne opplæringen:
- Vi har vurdert hvordan Google kom for å utvikle dette rammeverket som en måte å få mest mulig ut av HTML.
- Vi har undersøkt de grunnleggende kjernefunksjonene og funksjonaliteten som gjør Angular så gledelig å jobbe med.
- Til slutt har vi utviklet en dynamisk, fullt funksjonell demonstrasjon i løpet av få minutter for å demonstrere den sanne kraften til hvor lett det er å gå fra ingenting til en full søknad.
Hvis du er ute etter et robust, godt vedlikeholdt rammeverk for et stort prosjekt, anbefaler jeg på det sterkeste at du tar en titt på AngularJS. Den kan lastes ned gratis på AngularJS.org, som også inneholder et vell av informasjon, inkludert den fullstendige API-dokumentasjonen, samt en rekke eksempler og opplæringsprogrammer som dekker alle aspekter av front-end webutvikling. Lykke til!