Turinys
Įrengimas ir įrengimas Gruntas Tai padaryti yra gana paprasta, tačiau kai turime visas priemones ir žinome kai kurias pagrindines komandas, dažnai susimąstome, ką galime padaryti dabar? Kitas žingsnis yra labai paprastas, laikas pradėti kurti užduotis.Užduoties idėja yra ta, kad tai gali išspręsti dažnai pasitaikančias problemas ar veiklą, kurią mes visada atliekame darbo ar programų kūrimo metu, kai, būdami pasikartojantys, galime nustatyti šių užduočių parametrus ir taip jie visada gali veikti nereikia jų gaminti nuo nulio.
ReikalavimaiŠi pamoka rekomenduoja jums žinoti pagrindinius pagrindus „JavaScript“ nes naudosime daug dalykų iš šios kalbos. Kitas esminis reikalavimas yra tai, kad mes turime būti įdiegti ir sukonfigūruoti Gruntas mūsų sistemoje arba smėlio dėžėje, tai reiškia, kad mes turime turėti Node.js, jūsų paketų valdytojas npm ir žinoma Gruntas. Galiausiai, norėdami sukurti pratimų turinį, turime turėti teksto redaktorių ir pakankamai leidimų kurti failus ir laisvai vykdyti grunt komandą konsolėje.
Užduotis yra veikla, kuri turi pradžią, vystymąsi ir pabaigą Gruntas užduotis yra ne kas kita, kaip funkcija „JavaScript“ kuris yra byloje Gruntfile.js ir kad vykdant komandą niurzgėti mūsų konsolėje galime atlikti šią funkciją ir pradėti jos turinį.
Užduotys valdomos moduliniu būdu, panašiai kaip ir pagrindinės konstitucijos Node.jsTodėl kiekvieną kartą, kai apibrėžiame naują užduočių rinkinį, turime pridėti instrukcijas, nurodančias jų moduliarumą.
Norėdami sukurti užduotį, mums reikia bazinio kodo savo faile gruntfile.js, šis kodas vadinamas katilinė kadangi jis kartojasi, tačiau mes jį naudojame tik vieną kartą, pažiūrėkime, kaip jis atrodo:
module.exports = function (grunt) {// čia yra mūsų užduočių turinys};Įdėję šį kodą į savo failą, mes jau turime pagrindą ar konstituciją, kad galėtume sukurti savo užduotis. Kai tai bus padaryta, atliksime užduotį, leidžiančią mums parašyti pranešimą per konsolę, tam mes parašysime šį kodą:
module.exports = function (grunt) {grunt.registerTask ('default', function () {console.log ('Sveiki, mes išmetėme pranešimą į Grunt.');});};Tai, ką padarėme, labai lengva paaiškinti, pirmiausia paėmėme objektą niurzgėti kurį mes kuriame savo kodu katilinė, tada šiame objekte mes atlikome metodą registerTask kas mums padeda pasakyti Gruntas kad pridedame naują užduotį, kitame veiksme suteikiame jai pavadinimą ir tada su anonimine funkcija perduodame jai savo užduoties turinį, kuris šiuo atveju yra pranešimas konsolėje.
Pažiūrėkime, kaip šis pavyzdys atrodo vykdant užduotį aplanke, kuriame išsaugome failą gruntfile.js mes vykdysime šią komandą:
niurzgėtiKur tada konsolė turėtų duoti mums tokį rezultatą:
Svarbu paminėti, kad šiai užduočiai naudojame numatytąjį pavadinimą, nes tai yra užduotis Gruntas ji pagal numatytuosius nustatymus ieškos, kaip rodo jos pavadinimas mūsų faile gruntfile.js, jei jis neturėjo to pavadinimo, vykdydami gausime klaidą niurzgėti kaip matome šiame paveikslėlyje:
Ankstesnis mūsų pavyzdys, nors ir veikia, nėra labiausiai rekomenduojamas, mes tiesiog pasinaudojome pulteliu Node.js tačiau tai neturi visų konsolės funkcijų ir savybių Gruntas taigi, jei turėsime papildomos informacijos iš užduočių variklio, jos tikrai nematysime. Štai kodėl mes turime naudoti savo užduočių automatizavimo variklio konsolę, filosofijoje esanti sąvoka yra praktiškai ta pati, tik mes keičiame objektus ir funkcijas, kurias turime iškviesti.
Pažvelkime į šį kodą, kaip galime perrašyti savo kodą iš ankstesnio pavyzdžio, kad galėtume įvykdyti tai, ką paaiškinome:
module.exports = function (grunt) {grunt.registerTask ('default', function () {grunt.log.writeln ('Šį pranešimą rodo „Grunt“ konsolė.');});};Kaip mes matome, mes tik pakartotinai naudojame objektą niurzgėti failo inicialą, tada naudojame jo klasę žurnalą ir galiausiai metodas rašyti, rezultatas yra toks pat, kaip ir ankstesniame pavyzdyje, tik tuo skirtumu, kad savo tikslams panaudojome kažką optimalesnio. Pažiūrėkime šiame paveikslėlyje, kaip viskas buvo tinkamai prižiūrima:
Pradžioje kalbėjome apie daugkartinio naudojimo užduotis ir tai leidžia mums sutaupyti laiko, vienas iš dalykų, galinčių leisti mums pasiekti tinkamą pakartotinio užduočių panaudojimo laipsnį, yra galimybė prie jų pridėti parametrų, todėl galime pakeisti kai kurias vertes Atsižvelgiant į situaciją, kurioje galime atsidurti, pavyzdžiui, sukuriant vartotojus sistemai tiesiogiai Gruntas, su kuriuo kaip parametrą galime perduoti failo pavadinimą su vartotojų sąrašu.
Toliau pateiktame kode mes padarysime kažką labai įdomaus, pirmiausia pažiūrėsime, kaip sukurti užduotis, kurios nėra mūsų numatytasis procesas, todėl mes jau turėsime raktą, kad tame pačiame faile būtų kelios užduotys. Parametras, kuris gaus mūsų užduotį, bus tiesiog nustatytas anoniminėje funkcijoje, tokiu būdu mes galime jį užfiksuoti ir apdoroti savo kūne.
Pažiūrėkime kodą šiai užduočiai generuoti, kaip pratimą galime įdėti minėtą kodą po numatytosios užduoties, kad patikrintume, ką paaiškinome:
grunt.registerTask ('pasisveikink', funkcija (vardas) {grunt.log.writeln ('Sveiki:' + vardas + 'labas rytas siandien');});Dabar, kad konsolė iškviestų užduotį, mes tiesiog atliekame šiuos veiksmus:
gruntas pasisveikina: VardasKaip matome, įdedame užduoties pavadinimą ir su dvitaškiu atskiriame, kad perduotume reikiamą parametrą, šiuo atveju pavadinimą, kurį norime nusiųsti užduočiai, pažiūrėkime, kaip jis atrodo mūsų konsolėje:
Kas atsitiks, jei mūsų užduočiai reikės perduoti du ar daugiau parametrų, tiesiog į tą patį kodą pridedame juos atskirtus kableliais kaip funkciją „JavaScript“ normalu, o paskambinę jiems į konsolę galime juos išdėstyti tuo pačiu būdu, pažiūrėkime kodą, kuriame atliekame užduotį, kuri mums parodo:
grunt.registerTask ('pridėti', funkcija (vertė1, vertė2) {var suma = Skaičius (vertė1) + Skaičius (vertė2); grunt.log.writeln ('Pridėjus' + vertė1 + ' +' + vertė2 + ' yra: '+ suma);});Dabar pažiūrėkime, kaip tai atrodo, kai per konsolę paleidžiame šį pavyzdį su skambučiu ir atsakymu:
Kažkas įdomaus, kurį galėtume pastebėti, yra tai, kad mes jį naudojame „JavaScript“ Plokščiai ir paprastai apibrėžti apdorojimą, šios kalbos vartojimas yra labai svarbus, nes tokiu būdu galėsime išplėsti savo galimybes viskam, ką galime pasiekti vykdydami užduotis Gruntas.
Mūsų užduotims galima naudoti įspėjimus, todėl galime šiek tiek patvirtinti iš vartotojo gautus parametrus, pavyzdžiui, mūsų ankstesnė užduotis yra suma, tačiau jei įdėsime ką nors kitą, išskyrus skaičių, mūsų operacija tikrai nepavyks, todėl galime darykite taip: metodo pagalba įspėti () Patvirtinsime, kad abu parametrai yra skaičiai, o tuo atveju, jei jie nėra, paskelbsime įspėjimą:
grunt.registerTask ('pridėti', funkcija (vertė1, vertė2) {if (isNaN (Skaičius (vertė1))) {grunt.warn ('Pirmoji vertė' + vertė1 + 'turi būti skaičius.');} if ( isNaN (Skaičius (vertė2))) {grunt.warn ('Antroji vertė' + vertė2 + 'turi būti skaičius.');} Var suma = Skaičius (vertė1) + Skaičius (vertė2); grunt.log.writeln ( 'Pridėjus' + vertė1 + ' +' + vertė2 + 'rezultatas:' + suma);});Perrašytame kode mes patvirtinome, kad jei konversijos į Skaičius () iš parametrų nėra skaičius, paleiskite metodą įspėti () arba įspėjimas, tai nutraukia temą ir parodo pranešimą, kad galėtume išvengti klaidingos užduoties. Pažiūrėkime, kaip tai atrodo mūsų konsolėje vykdant užduotį:
Kaip pastebime ir kalbos žinias „JavaScript“ Tai labai svarbu, todėl jei esame žemiau lygio, kurį norime pasiekti, turime praktikuoti ir stengtis atlikti kuo daugiau pratimų, kad patobulintume savo įgūdžius.
Tuo mes baigėme šį vadovėlį, nes matome užduočių kūrimą Gruntas Tai nėra labai sudėtinga, veikiau jos logika jas apibrėžiant padeda lengviau suprasti įrankio naudojimą. Tikrasis sudėtingumas yra mūsų pačių logikos apibrėžimas, kai mes žinome, ką atliks mūsų užduotis ir kaip mes galime padaryti ją kuo daugiau pakartotinai naudojamų, nes jei ne, mes dirbsime veltui.