i. er

går i ember. er,,,,, 12,,,,,,,,, 93,,,,,,, det cyber - mandag envato tuts + kurser vil blive reduceret til $3.- og' t miss.,, der er en masse javascript biblioteker, der er til rådighed, og de fleste er virkelig god til at give den traditionelle dom centriske interaktioner, der typisk websteder.men når det er tid til at opbygge en ny kode base for en enkelt side app, der er en hel suite af nye rammer for at glatte tingene ud.,,,, det gamle ordsprog er rigtigt: "brug det bedste redskab til opgaven.", er det ikke, at de traditionelle biblioteker som jquery kan ikke hjælpe dig bygge desktop - som erfaringer, det er bare ikke brug for det, og der mangler data, hvis tingene som bindende, transport og offentlige forvaltning.du kan sikkert sammenflikke en flok plugins til at nå nogle af den funktion, men med udgangspunkt i en ramme, der er specifikt blevet skabt for at løse de specifikke problemer, som efter min mening giver mere mening.de gamle siger, er sandt: "den bedste værktøj til opgaven.", jeg for nylig havde en samtale med den ember.js hold. det var motiveret af mit ønske om at få at vide, hvad jeg kalder "den nye hotteste": ember. js,.,, ember passer regningen for det, jeg har som beskrevet ovenfor, og gør det på en måde, der minder meget om, hvordan jquery tillader udviklere at komme op at køre hurtigt.holdet er bevidst taget skridt til abstrakt en masse kompleksiteten i forbindelse med at designe og bygge på /registeransvarlig /model baseret på ansøgninger ved hjælp af år af ekspertise og viden erhvervet gennem opbygning af store apps.,, hvad jeg gerne vil gøre, er at hjælpe dig til ember.js, via en multi - del artikel serie, som gradvist vil indføre du med begreber som led.vi starter med den sædvanlige præsentation (som er denne post), og derefter gradvist rampen op til opbygning af en fuldstændig ansøgning.det bedste er, at dette også vil hjælpe mig styrke de begreber, som jeg allerede har lært, og måske hente nogle nye teknikker på vejen!jeg vil gøre mit bedste for at få ember.js team undersøger dette materiale til nøjagtighed og måske også bidrage med nogle guldklumper det, før vi går videre, en advarsel: ember.js gør en masse magiske for dig.der er tider, hvor man skal se på den kode, og siger, "hva '?hvordan kan det gøre det? "jeg har været der, og jeg vil gøre mit bedste for at destillere ting, men jeg tager ikke til at dykke ned i bunden af ember ramme kode.i stedet vil jeg tale om, hvordan du kan udnytte sine redskaber og api til at bygge din app., så lad os starte.,, centrale begreber, ember.js ikke er en ramme for opbygningen af traditionelle websteder.,, den første ting, man skal huske, er, at ember.js ikke er en ramme for opbygningen af traditionelle websteder.biblioteker, som jquery og mootools er særdeles egnet.hvis du overvejer ember.js, så den antagelse, at du leder efter at bygge desktop - som erfaringer - navnlig skalerbare.faktisk er det slogan for rammerne er "rammer for udvikling af ambitiøse web ansøgninger", der fortæller dig, det er ikke din fars javascript bibliotek., jeg nævnte tidligere, at ember udnytter den mvc mønster for at fremme passende kode ledelse og organisation.hvis du aldrig har gjort mvc baseret udvikling, bør du læse op på det.nettuts + har en stor artikel om emnet her.for dem af jer bekendt med de begreber, så burde du føle dig hjemme.den ene ting, jeg har hørt hele tiden er, at overgangen fra rygraden til ember.js faktisk er let, fordi ember er meget tunge løft for dig og samtidig opretholde den kode organisation - - som de entreprenører er vant til, ember er også baseret på client-side modeller...en masse.den bruger styret blive bibliotek, som giver udtryk, der gør det muligt for dem at skabe dynamiske html baseret modeller.gløder entreprenør kan binde data for disse indlejret udtryk og dynamisk forandring udstilling af deres app, på et fly.jeg kan f.eks. skabe en model, der kan modtage en række mennesker og vise dem i en unordered liste:, < ul > {{# hvert folk}} < li > - {{navn}}.< /li > {{/hver}} < /ul > meddelelse "# hver" udtryk, der fungerer som en løkke direktiv, oversigt over hvert enkelt element i "people" system og erstatter "{{navn}}" udtryk med en faktisk værdi.det er vigtigt at bemærke, at den dobbelte anførselstegn er møntefterligninger benyttes af styret til at identificere udtryk.det er et lille eksempel, og vi skal dykke mere detaljeret senere, styret er en utrolig magtfuld client-side blive motor, og jeg vil anbefale, at ikke kun ember guider, men styret websted sig til at få en fuld forståelse af de muligheder, der er til rådighed.du vil bruge det en hel del.,, oprettelse af ember, ember.js afhængig af yderligere biblioteker, så du bliver nødt til at tage en kopi af jquery og styret.men vent, sagde jeg ikke, at jquery og ember spiller i forskellige rum?- ja, jeg gjorde, men her er problemet: ember hold ikke opfinde hjulet.de valgte jquery for at gøre, hvad de er bedst til, nemlig at arbejde med den dom.og det er en god ting, siden jquery er virkelig god til det.det er også derfor, de tog med styret, hvilket er en glimrende blive bibliotek, der er skrevet af yehuda katz, som er en glød grundlæggende medlem af holdet, den letteste måde at få de papirer, du har brug for, er at gå til ember.js github repo og træk ned starter kit.det er en boilerplate for dig til at begynde med.på det tidspunkt, hvor dette skrift, indeholder:,, ember 1, 0 rc1, handlerbars 1, 0 rc3, jquery 1.9.1, er der også en grundlæggende html skabelon, som er kodet til at omfatte alle de dermed forbundne biblioteker (jquery, ember osv.) og med et eksempel på en styret skabelon og "app. j 'er", der omfatter kode for sparker en grundlæggende ember app. < manuskript src = "js /libs /jquery-1.9.1. er" > < /manuskript > < manuskript src = "js /libs /handlebars-1.0.0-rc. 3. er" > < /manuskript > < manuskript src = "js /libs /ember-1.0.0-rc. 1. er" > < /manuskript > < manuskript src = "js /app. er" > < /manuskript > lige bemærke, at app.js er ikke en del af denne ramme.det er en almindelig, ole javascript fil, du kan kalde det, hvad du vil.og mens vi bruger det i forbindelse med denne forelæsning serie, ned af vejen, vil du sandsynligvis ende sine javascript i flere sager, ligesom du vil for enhver anden lokalitet eller app.også ember forventer ikke en specifik fortegnelse struktur for din ramme filer. når man ser på starter kit - kode, kan det se ud som en typisk websted kode.i nogle henseender, du har ret!når vi begynder at organisere ting, vil du se, hvordan en glød app er anderledes.,,, hvordan ember jord, før du begynder at hakke i kode, det er vigtigt at forstå, hvordan ember.js fungerer, og at du grok de bevægelige dele, der udgør en glød app.lad os tage et kig på de dele, og hvordan de forholder sig til hinanden,.,, skabeloner, skabeloner er en central del af din brugergrænseflade.som jeg nævnte tidligere, er client-side styret bibliotek, der anvendes i ember og udtryk, der leveres af biblioteket anvendes i udstrakt grad ved at skabe eu - erhvervsgrenen for deres ansøgning.her er et simpelt eksempel:, < manuskript type = "tekst /x-handlebars" > < h2 > < stærk > {{firstname}} {{lastname}} < /stærk > < /h2 > < /manuskript >, bemærker, at det udtryk er blandet ind i din html - og via ember, dynamisk ændre indholdet vises på den side.i dette tilfælde {{firstname) og {{lastname}} placeholders vil blive erstattet af data indhentet fra app., styret giver en masse strøm via en fleksibel api - grænseflade.det vil være vigtigt for dig at forstå, hvad det giver.,, routing, en ansøgning er router bidrager til at forvalte den stat, i anvendelse., en ansøgning er router bidrager til at forvalte den tilstand af ansøgningen og de ressourcer, der er nødvendige som bruger navigerer app.dette kan omfatte opgaver, som f.eks. anmoder om oplysninger fra en model, mødes de synspunkter, eller med skabeloner. du gør dette ved at skabe en rute for specifikke placeringer i din ansøgning.ruter angive dele af ansøgningen og url - adresser, der er forbundet med dem.adressen er nøglen til at forstå, at ember bruger identifikator, som anmodningen stat skal forelægges for brugeren, app. router. kort (function() {. rute ('"); //fører os til" /"}), den opførsel af en rute (f.eks.: anmoder om oplysninger fra en model) forvaltes via tilfælde af ember rute formål og er fyret, når en bruger navigerer til en specifik url.et eksempel kunne anmode om oplysninger fra en model, som denne:, app.employeesroute = ember. rute. udvide ((model: function() {tilbage app. ansat. find();}}); i dette tilfælde, når en bruger anvendes til "ansatte" del af ansøgningen, den vej er en anmodning til den model for en liste over alle ansatte,.,, modeller, en genstand, repræsentation af data.,, modeller er et objekt repræsentation af de data, deres anmodning vil bruge.det kunne være et simpelt system eller data hentet fra en fredfyldt dynamisk json api, via en ajax anmodning.den glød data bibliotek giver api til lastning, kortlægning og ajourføring af data til modeller i din ansøgning.,,, de registeransvarlige, der typisk anvendes til oplagring og repræsenterer model data og attributter.de opfører sig som en indikator, der giver dig adgang til model attributter og giver adgang til dynamisk modeller at vise.det er derfor en skabelon, altid vil være forbundet med en kontrollør. det vigtigste er at huske på, at, mens en model har data, en registeransvarlig, er hvad du bruger til at afsløre, at programmatically data til forskellige dele af deres ansøgning.det kan forekomme, at modeller og de registeransvarlige er tæt koblet, modeller, der i sig selv ikke har kendskab til den registeransvarlige, der vil bruge dem senere. du kan også opbevares andre anvendelse egenskaber, der skal fortsætte, men har ikke brug for at blive reddet på en server, holdninger, synspunkter i ember.js er beregnet at forvalte begivenheder omkring interaktion med brugeren og omsætte dem til begivenheder, der har betydning for deres anvendelse.så hvis en bruger km på en knap til at slette en ansat, der har til opgave at fortolke er af den opfattelse, at indfødte browser klik begivenhed og forarbejdning på passende vis inden deres ansøgning er aktuelle.,, at konventioner, en af de måder, som ember.js bidrager til at mindske størrelsen af den kode, der er nødvendige og ordne ting for dig bag scener er med betegnelsen konventioner.den måde du definere og - ruter (og ressourcer) virkninger at din tilsynsførende, modeller, synspunkter og - modeller.hvis jeg f.eks. skabe en vej, der hedder "ansatte":, app. router. kort (function() {. indtægt ("ansatte");}), vil jeg kalde min komponenter, som denne:,, rute til formål, app.employeesroute, registeransvarlige, app.employeescontroller model:,,, app.employee, opfattelse:, app.employeesview, model:, ansatte, ved hjælp af den navngivningskonvention tjener et dobbelt formål.for det første giver dig en semantisk relation mellem som komponenter.for det andet ember automatisk kan skabe de nødvendige ting, som måske ikke findes (f.eks.: en rute objekt eller en controller) og sende dem til brug i din ansøgning.det er "magi", som jeg nævnte tidligere.det er faktisk præcis, hvad ember har på den globale anvendelse, når du instantiate anvendelse til formål, var app = ember. anvendelse. create(); det eneste linje skaber misligholdelse henvisninger til anvendelse er router, finansinspektørens mening og skabelon.,, route objekt, app.applicationroute registeransvarlige,,, app.applicationcontroller, opfattelse:, app.applicationview, model:, anvendelsen, der går tilbage til den "ansatte" vej, jeg har skabt over, hvad der vil ske, er, at når en bruger anvendes til "ansatte" i din ansøgning, ember vil se til følgende formål:,,, - app. employeesroute,,, app. employeescontroller,,, ansatte, model, hvis det ikke finder dem, vil det skabe et tilfælde af hver, men vil ikke gøre ennoget, siden du ikke har angivet en model til beregning af data fra eller en model til at vise de data.dette er grunden til, at den navngivningskonvention, er så vigtig.det gør det muligt at håndtere ember de opgaver, der er forbundet med en specifik rute, uden at jeg behøver at tråd ting op manuelt., har bemærket, at i det første eksempel, jeg brugte den enestående navn, "arbejdstager" til at definere den model.det er med vilje.selve arten af navnet "ansatte", gør, at jeg kan arbejde med 0 til mange ansatte, så det er vigtigt at skabe en model, som kunne give den fleksibilitet, til at vende tilbage til en ansat og alle ansatte.den enestående navngivningskonvention for denne model ikke er et krav i ember, som modeller ikke selv har kendskab til den registeransvarlige, der vil bruge dem senere.så du har fleksibilitet i navngivningen af dem, men af hensyn til, at det med denne konvention vil gøre forvaltningen af din kode væsentligt lettere, og jeg valgte at bruge, resource(), en metode til at definere min rute, for i dette scenario, ville jeg sandsynligvis have indlejrede ruter til at forvalte detaljer sider for specifikke oplysning af arbejdstagerne.vi kan tale om russisk senere i serie. det centrale levering er det ved hjælp af en konsekvent, at ordningen, ember let kan forvalte de kroge, som binder disse elementer sammen, uden at deres behov for udtrykkeligt at definere forbindelser via et ton af kode., med udførlige oplysninger om ember navn konventioner findes på projektets hjemmeside og en, må læse., næste: bygning af en app, i den næste del af serien, vi vil dykke ned i koden for at skabe grundlag for en ansøgning.,, vi har været i de centrale begreber i ember og drøftet de vigtigste aspekter af ramme på højt niveau.i næste del af serien, vi vil dykke ned i koden for at skabe grundlag for en ansøgning.i mellemtiden vil jeg gerne igen anbefaler, at du begynder at se på den dokumentation for styret for at få en fornemmelse af udtrykkene syntaks.også, hvis du er virkelig mere end villig til at køre ind i ember, bliv hængende på tuts + præmie, som snart vil tilbyde en fuld, der går du gennem opbygning af en glød er baseret på anvendelse.og, som jeg sagde i begyndelsen af denne artikel, ember.js centralthold fører yehuda katz og tom dale status for nøjagtighed, og gav det en tommelfinger.ember team, der er godkendt!vi ses om lidt.,,,



Previous:
Next Page: