Apmēram pirms 15 gadiem es strādāju uzņēmumā, kurā mēs veidojām lietotnes ceļojumu aģentiem, lidostu darbiniekiem un aviokompānijām. Mēs arī izveidojām savu iekšējo sistēmu lietotāja saskarnes komponentiem un vienas lapas lietotņu iespējām. Mums bija komponenti visam: lauki, pogas, cilnes, diapazoni, datu tabulas, izvēlnes, datumu atlasītāji, atlases un vairākas atlases. Mums pat bija div komponents. Mūsu div komponents, starp citu, bija lielisks, tas ļāva mums izveidot noapaļotus stūrus visās pārlūkprogrammās, kas, ticiet vai nē, tolaik nebija viegli izdarāms.

Mūsu darbs norisinājās mūsu vēstures brīdī, kad JS, Ajax un dinamiskais HTML tika uzskatīts par revolūciju, kas mūs ieveda nākotnē. Pēkšņi mēs varējām dinamiski atjaunināt lapu, iegūt datus no servera un izvairīties no nepieciešamības pārvietoties uz citām lapām, kas tika uzskatīta par lēnu un ekrānā starp abām lapām mirgo liels balts taisnstūris. Bija frāze, ko populāru padarīja Džefs Atvuds (StackOverflow dibinātājs), un kas skanēja: "Jebkura lietojumprogramma, ko var rakstīt JavaScript, galu galā tiks rakstīta JavaScript." - Džefs Atvuds

Mums tajā laikā tas šķita kā uzdrīkstēšanās iet un izveidot šīs lietotnes. Likās kā vispārējs apstiprinājums darīt visu ar JS. Tāpēc mēs visu darījām ar JS, un mēs īsti netērējām laiku, lai izpētītu citus darbības veidus. Mēs īsti nejutām stimulu pareizi apgūt HTML un CSS iespējas. Mēs īsti neuztvērām tīmekli kā attīstošu lietotņu platformu kopumā. Lielākoties mēs to uzskatījām par kaut ko, kas mums jārisina, it īpaši attiecībā uz pārlūkprogrammas atbalstu. Mēs varētu mest vairāk JS, lai paveiktu lietas. Vai veltītais laiks, lai uzzinātu vairāk par to, kā tīmeklis darbojas un kas bija pieejams platformā, būtu man palīdzējis? Protams, es droši vien būtu varējis noskūt virkni koda, kas patiesībā nebija vajadzīgs. Bet tajā laikā varbūt ne tik daudz. Redziet, pārlūkprogrammu atšķirības toreiz bija diezgan ievērojamas. Tas bija laiks, kad Internet Explorer joprojām bija dominējošā pārlūkprogramma, kur Firefox bija tuvu otrajā vietā, bet sāka zaudēt tirgus daļu, jo Chrome strauji kļūst arvien populārāks. Lai gan pārlūkprogrammas Chrome un Firefox diezgan labi spēja vienoties par tīmekļa standartiem, vide, kurā darbojās mūsu lietotnes, nozīmēja, ka mums ilgu laiku bija jāatbalsta IE6. Pat tad, kad mums bija atļauts atbalstīt IE8, mums joprojām bija jārisina daudz atšķirību starp pārlūkprogrammām. Ne tikai tas, bet arī tā laika tīmeklī nebija tik daudz iespēju, kas iebūvētas tieši platformā.

Ātri uz priekšu uz šodienu. Lietas ir ārkārtīgi mainījušās. Mums ir ne tikai vairāk šo iespēju nekā jebkad agrāk, bet arī ir palielinājies to pieejamības ātrums. Ļaujiet man vēlreiz uzdot jautājumu: vai, veltot laiku, lai uzzinātu vairāk par to, kā tīmeklis darbojas un kas ir pieejams platformā, jums šodien palīdzētu? Pilnīgi jā. Mācoties izprast un izmantot tīmekļa platformu šodien, jūs iegūstat milzīgas priekšrocības salīdzinājumā ar citiem izstrādātājiem. Neatkarīgi no tā, vai strādājat ar veiktspēju, pieejamību, atsaucību, to visu kopā vai vienkārši piegādājat lietotāja saskarnes funkcijas, ja vēlaties to darīt kā atbildīgs inženieris, pieejamo rīku pārzināšana palīdz ātrāk un labāk sasniegt savus mērķus. Dažas lietas, kurām, iespējams, vairs nav vajadzīga bibliotēka Zinot, ko mūsdienās atbalsta pārlūkprogrammas, rodas jautājums: ko mēs varam atteikties? Vai mums ir nepieciešams div komponents, lai 2025. gadā izveidotu noapaļotus stūrus? Protams, mēs to nedarām. Robežas rādiusa rekvizītu jau vairāk nekā 15 gadus atbalsta visas pašlaik izmantotās pārlūkprogrammas. Drīzumā būs pieejama arī stūra forma, kas paredzēta vēl pievilcīgākiem stūriem. Apskatīsim salīdzinoši nesenos līdzekļus, kas tagad ir pieejami visās lielākajās pārlūkprogrammās un kurus varat izmantot, lai aizstātu esošās atkarības savā kodu bāzē. Lieta nav nekavējoties pamest visas iecienītās bibliotēkas un pārrakstīt kodu bāzi. Attiecībā uz visu pārējo jums vispirms ir jāņem vērā pārlūkprogrammas atbalsts un jāizlemj, pamatojoties uz citiem jūsu projektam raksturīgiem faktoriem. Tālāk norādītās funkcijas ir ieviestas trīs galvenajās pārlūkprogrammas programmās (Chromium, WebKit un Gecko), taču jums var būt atšķirīgas pārlūkprogrammas atbalsta prasības, kas neļauj tās izmantot uzreiz. Tomēr tagad joprojām ir piemērots laiks, lai uzzinātu par šīm funkcijām un, iespējams, kādreiz plānojiet tās izmantot. Popovers un dialogi Popover API,

HTML elements un ::backdrop pseidoelements var palīdzēt atbrīvoties no atkarības no uznirstošajiem logiem,rīka padoms un dialogu bibliotēkas, piemēram, peldošā lietotāja saskarne, Tippy.js, Tether vai React Tooltip. Tie nodrošina pieejamību un fokusa pārvaldību jūsu vietā, tie ir ļoti pielāgojami, izmantojot CSS, un tos var viegli animēt. Akordeoni Elements
, tā nosaukuma atribūts savstarpēji izslēdzošiem elementiem un ::details-content pseidoelements novērš nepieciešamību pēc akordeona komponentiem, piemēram, Bootstrap Accordion vai React Accordion komponenta. Tikai platformas izmantošana šeit nozīmē, ka cilvēkiem, kuri zina HTML/CSS, ir vieglāk saprast jūsu kodu, pirms tam nav jāiemācās izmantot noteiktu bibliotēku. Tas arī nozīmē, ka esat imūns pret izmaiņām bibliotēkā vai šīs bibliotēkas darbības pārtraukšanu. Un, protams, tas nozīmē mazāk koda lejupielādes un palaišanas. Savstarpēji izslēdzošiem detaļu elementiem nav nepieciešams JS, lai to atvērtu, aizvērtu vai animētu. CSS sintakse Kaskādes slāņi, lai iegūtu sakārtotāku CSS kodu bāzi, CSS ligzdošanu, kompaktāku CSS, jaunas krāsu funkcijas, relatīvās krāsas un krāsu sajaukumu, jaunas matemātikas funkcijas, piemēram, abs(), sign(), pow() un citas, palīdz samazināt atkarību no CSS priekšprocesoriem, utilītu bibliotēkām, piemēram, Bootstrap un Tailwind, vai pat runtime CSSbraries. Spēļu mainītājs :has(), kas jau ilgu laiku ir viena no pieprasītākajām funkcijām, novērš nepieciešamību pēc sarežģītākiem uz JS balstītiem risinājumiem. JS Utilities Mūsdienu masīva metodes, piemēram, findLast() vai at(), kā arī Set metodes, piemēram, different(), intersection(), union() un citas, var samazināt atkarību no tādām bibliotēkām kā Lodash. Konteineru vaicājumi Konteinera vaicājumi liek lietotāja interfeisa komponentiem reaģēt uz lietām, kas nav skata loga lielums, un tādējādi padara tos vairāk izmantojamus dažādos kontekstos. Šim nolūkam vairs nav jāizmanto JS smaga lietotāja interfeisa bibliotēka, kā arī nav jāizmanto polifills. Izkārtojums Režģis, apakšrežģis, flexbox vai vairāku kolonnu ir pastāvējuši jau ilgu laiku, taču, aplūkojot CSS stāvokļa aptauju rezultātus, ir skaidrs, ka izstrādātāji mēdz būt ļoti piesardzīgi, ieviešot jaunas lietas, un gaida ļoti ilgu laiku, pirms to dara. Šīs funkcijas ir bijušas bāzes līnijas jau ilgu laiku, un jūs varētu tās izmantot, lai atbrīvotos no atkarības no tādām lietām kā Bootstrap režģa sistēma, Foundation Framework elastīgās utilītprogrammas, Bulma fiksētais režģis, Materialize grid vai Tailwind kolonnas. Es nesaku, ka jums vajadzētu atmest savu sistēmu. Jūsu komanda to pieņēma kāda iemesla dēļ, un tā noņemšana varētu būt liels projekts. Taču aplūkojot to, ko tīmekļa platforma var piedāvāt bez trešās puses iesaiņojuma, ir daudz priekšrocību. Lietas, kas jums tuvākajā nākotnē, iespējams, vairs nebūs vajadzīgas Tagad īsi apskatīsim dažas lietas, kurām tuvākajā nākotnē bibliotēka nebūs vajadzīga. Tas nozīmē, ka tālāk norādītās lietas nav gluži gatavas masveida ieviešanai, taču to apzināšanās un iespējamās vēlākas izmantošanas plānošana var būt noderīga. Enkura pozicionēšana CSS enkura pozicionēšana apstrādā uznirstošo logu un rīka padomu pozicionēšanu attiecībā pret citiem elementiem un rūpējas par to, lai tie būtu redzami, pat pārvietojot, ritinot vai mainot lapu. Tas lieliski papildina iepriekš minēto Popover API, kas ļaus vēl vienkāršāk pāriet no JS risinājumiem, kas prasa lielāku veiktspēju. Navigācijas API Navigācijas API var izmantot, lai apstrādātu navigāciju vienas lapas lietotnēs, un tā var lieliski papildināt vai pat aizstāt React Router, Next.js maršrutēšanas vai Angular maršrutēšanas uzdevumus. Skatīt Transitions API View Transitions API var veikt animāciju starp dažādiem lapas stāvokļiem. Lietojumprogrammā ar vienu lapu tas ļoti atvieglo vienmērīgu pāreju starp stāvokļiem un var palīdzēt atbrīvoties no animācijas bibliotēkām, piemēram, Anime.js, GSAP vai Motion.dev. Vēl labāk, API var izmantot arī ar vairāku lapu lietojumprogrammām. Atcerieties, kad es teicu, ka iemesls, kādēļ uzņēmumā, kurā es strādāju pirms 15 gadiem, veidojām vienas lapas lietotnes, bija izvairīties no baltas lapas atkārtotas ielādes zibspuldzes navigācijas laikā? Ja šī API tajā laikā būtu bijusi pieejama, mēs būtu varējuši sasniegt skaistus lapas pārejas efektus bez vienas lapas ietvara un bez milzīgas visas lietotnes sākotnējās lejupielādes. Ritināšanas animācijas Ritināšanas animācijas tiek rādītas lietotāja ritināšanas pozīcijā, nevis laika gaitā, padarot tās par lielisku risinājumu stāstīšanai un produktu apskatei. Daži cilvēki ar to ir pārspīlējušies, taču, ja to izmanto pareizi, tas var būt ļoti efektīvs dizaina rīks un var palīdzēt atbrīvoties no tādām bibliotēkām kā: ScrollReveal, GSAP Scroll vaiWOW.js. Pielāgojamas atlases Pielāgojama atlase ir parasts

No spam. Join 138,000+ creators. Unsubscribe anytime.

Create Your Free Bio Page

Join 138,000+ creators on Seemless.

Get Started Free