Innholdsfortegnelse
Installasjonen og etableringen av Grynte Det er noe ganske enkelt å gjøre, men når vi har alle verktøyene og kjenner noen av de grunnleggende kommandoene, lurer vi ofte på hva vi kan gjøre nå? Det neste trinnet er veldig enkelt, det er på tide å begynne å bygge oppgaver.Tanken bak en oppgave er at det kan være noe som kan løse vanlige problemer eller aktiviteter som vi alltid utfører i løpet av arbeidsdagen eller applikasjonsutviklingen, der vi kan gjenta parametere for disse oppgavene og være repeterende i naturen, og dermed kan de alltid fungere uten at du trenger å lage dem fra bunnen av.
KravDenne opplæringen anbefaler at du kjenner det grunnleggende JavaScript fordi vi vil bruke mange ting fra dette språket. Et annet viktig krav er at vi må ha installert og konfigurert Grynte i vårt system eller sandkasse betyr dette at vi må ha Node.js, pakkelederen din npm og selvfølgelig Grynte. Til slutt må vi ha en tekstredigerer for å lage innholdet i øvelsene og tilstrekkelige tillatelser til å lage filer og utføre grunt -kommandoen i konsollen fritt.
En oppgave er en aktivitet som har en begynnelse, en utvikling og en slutt, i Grynte en oppgave er ikke annet enn en funksjon i JavaScript som finnes i filen Gruntfile.js og det når du utfører kommandoen grynte i konsollen vår kan vi få denne funksjonen til å bli utført, slik at innholdet blir lansert.
Oppgavene styres på en modulær måte, mye i stil med den grunnleggende konstitusjonen av Node.jsDerfor, hver gang vi definerer et nytt sett med oppgaver, må vi legge til instruksjonene som angir deres modularitet.
For å lage en oppgave trenger vi en grunnkode i filen vår gruntfile.js, denne koden kalles kokeplate fordi det er repeterende, men vi bruker det bare en gang, la oss se hvordan det ser ut:
module.exports = function (grunt) {// her er innholdet i oppgavene våre};Når vi har plassert koden i filen vår, har vi allerede grunnlaget eller grunnloven for å kunne lage oppgavene våre. Når dette er gjort, skal vi gjøre en oppgave som lar oss skrive en melding etter konsoll, for dette skal vi skrive følgende kode:
module.exports = function (grunt) {grunt.registerTask ('default', function () {console.log ('Hallo, vi har kastet en melding i Grunt.');});};Det vi har gjort er veldig enkelt å forklare, først har vi tatt objektet grynte som vi lager med koden vår kokeplate, så i dette objektet har vi utført metoden registerTask hva hjelper oss å fortelle Grynte at vi legger til en ny oppgave, neste handling gir vi den et navn, og deretter sender vi med en anonym funksjon innholdet i oppgaven vår til den, som i dette tilfellet er meldingen på konsollen.
La oss se hvordan dette eksemplet ser ut når vi utfører oppgaven, for det i mappen der vi lagrer filen vår gruntfile.js vi skal utføre følgende kommando:
grynteHvor skal konsollen gi oss et resultat som følgende:
La oss se i følgende kode hvordan vi kan skrive om koden vår fra forrige eksempel for å kunne oppfylle det vi har forklart:
module.exports = function (grunt) {grunt.registerTask ('default', function () {grunt.log.writeln ('Denne meldingen vises av Grunt -konsollen.');});};Hvordan vi ser gjenbruker vi bare objektet grynte initial av filen, så bruker vi klassen Logg og til slutt metoden skrive, resultatet er det samme som i forrige eksempel bare med den forskjellen at vi har brukt noe mer optimalt til våre formål. La oss se på følgende bilde hvordan alt ble vedlikeholdt på riktig måte:
I den følgende koden skal vi gjøre noe veldig interessant, først og fremst skal vi se hvordan vi lager oppgaver som ikke er vår standardprosess, med dette vil vi allerede ha nøkkelen til å ha flere oppgaver i samme fil. Parameteren som vil motta oppgaven vår vil ganske enkelt bli satt i den anonyme funksjonen, på denne måten kan vi fange og behandle den i kroppen av den.
La oss se koden for å generere denne oppgaven, som en øvelse kan vi plassere koden etter vår standardoppgave for å teste det vi har forklart:
grunt.registerTask ('hello', function (name) {grunt.log.writeln ('Hello:' + name + 'good morning today');});Nå for å ringe konsollen til oppgaven, gjør vi ganske enkelt følgende:
grynt si hei: NavnHvordan vi kan se plasserer vi navnet på oppgaven, og med et kolon skiller vi for å passere den nødvendige parameteren, i dette tilfellet navnet vi vil sende til oppgaven, la oss se hvordan det ser ut i konsollen vår:
grunt.registerTask ('add', function (value1, value2) {var sum = Number (value1) + Number (value2); grunt.log.writeln ('Resultatet av å legge til' + value1 + ' +' + value2 + ' er: '+ sum);});La oss nå se hvordan det ser ut når vi kjører gjennom konsollen dette eksemplet med samtalen og svaret:
Det er mulig å bruke advarsler i våre oppgaver, med dette kan vi validere litt parametrene mottatt fra brukeren, for eksempel er vår tidligere oppgave en sum, men hvis vi setter noe annet enn et tall, vil operasjonen vår mislykkes, så vi kan gjør følgende: ved hjelp av metoden advare () Vi vil validere at begge parametrene er tall, og i tilfelle de ikke er det, vil vi starte en advarsel:
grunt.registerTask ('add', function (value1, value2) {if (isNaN (Number (value1)))) {grunt.warn ('The first value' + value1 + 'must be a number.');} if ( isNaN (Number (verdi2))) {grunt.warn ('Den andre verdien' + verdi2 + 'må være et tall.');} Var sum = Number (verdi1) + Number (verdi2); grunt.log.writeln ( 'Resultatet av å legge til' + verdi1 + ' +' + verdi2 + 'er:' + sum);});I vår omskrevne kode har vi validert at hvis resultatet av konverteringen til Antall () av parameterne er ikke et tall lansere metoden advare () eller advarsel, dette bryter tråden og viser meldingen, slik at vi kan unngå en feil oppgave. La oss se hvordan dette ser ut i konsollen vår når vi utfører oppgaven:
Med dette har vi fullført denne opplæringen, slik vi ser opprettelsen av oppgaver med Grynte Det er ikke veldig komplekst, snarere logikken på tidspunktet for å definere dem hjelper oss med å lette forståelsen av bruken av verktøyet. Den sanne kompleksiteten er i definisjonen av vår egen logikk i øyeblikket for å vite hva vår oppgave vil gjøre og hvordan vi kan gjøre den så gjenbrukbar som mulig, siden hvis den ikke er det, vil vi jobbe forgjeves.