Drupal 8 + reageeri. Lahtiseotud (peata) vs järk-järgult lahtimonteeritud

Drupal 8 + reageeri. Lahtiseotud (peata) vs järk-järgult lahtimonteeritud

Aeg läks mööda ja ma vaatasin Drupali üritusi, esitlusi, videoid ja lugesin Drupali kogukonna ajaveebide artikleid ning märkasin, et märksõnad nagu “lahutatud”, “peata”, “järk-järgult lahutatud” hakkasid seda meediumiosa üle võtma. Nägin, et suurimad Drupali ettevõtted hakkasid jagama oma klientide edulugusid Drupali lahti ühendatud veebisaitide, eeliste ja väljakutsete kohta, mis neil nende töötamise ajal tekkisid.

Ma ei tahtnud seda hüperongi vahele jätta, nii et hakkasin õppima võimalusi ühendada võimsaim sisuhaldussüsteem ühe populaarseima javascripti teegiga.

Selles artiklis jagan oma teadmisi, mis ma selle reisi ajal sain.

Kiire sissejuhatus

Alustame algusest nende kahe vinge tööriista kiire sissejuhatusega.

Drupal on sisuhaldussüsteem (CMS), millel on võimas veebiteenuste API.

React on JavaScripti teek, mis lihtsustab interaktiivsete kasutajaliideste loomist.

Lahtiseotud (peata) vs järk-järgult lahtimonteeritud

Teel sain teada, et Drupal 8 ja React koos kasutamiseks on kaks võimalust. Siin on lühike sissejuhatus nendesse kahest lahutamise meetodist:

  • Sisselülitatud (peata) rakendus suhtleb Drupaliga veebiteenuste API kaudu ainult sisu laadimiseks või kasutajate autentimiseks.

Teisisõnu on see eraldiseisev React rakendus, mis kasutab Drupal 8 teenuste API lõpp-punkte.

  • „Järk-järgult lahutatud” rakendus kasutab Drupali teemat, paigutust (plokid, piirkonnad jne), vaateid, kuvasid ja nii edasi.

See on tavaline Drupal 8 installimine koos mõne lahti ühendatud komponendiga (näiteks artiklite loend, esildiste vorm või mõni muu veebisaidi keerukam osa).

Lahti ühendatud (peata)

Sukeldume sügavamalt ja uurime veel lahtisidunud (peata) lähenemisviisi põhipunkte.

  • See lähenemisviis sobib hästi arendusmeeskondadele, kellel on juba teadmisi Reaxi toimimise kohta.
  • Esiosa arendajatel on paigutuse üle täielik kontroll, kuid saidi administraator ei saa Drupali piirkondi kasutada ega saa plokki piirkonda paigutada (või ümber korraldada).
  • Esiosa arendajad saavad Drupali teema kontekstis töötamise õppimise asemel kasutada tööriistu, mida nad soovivad kasutada.

Järk-järgult lahutatud

Mõned põhipunktid järk-järgult lahutatud lähenemisviisi kohta:

  • Serveripoolse renderdamise pärast pole vaja muretseda (enamasti tehakse seda SEO põhjustel).
  • Paigutuse, vaadete, kuvade jms jaoks saate kasutada Drupali võimsaid sisseehitatud tööriistu.
  • Juhul, kui soovite kasutada kõiki CRUD-toiminguid (luua, lugeda, värskendada ja kustutada), võite autentimiseks kasutada CSRF-i seansiluba (teisel juhul peaksite seadistama „OAuth” või sarnase autoriseerimisraamistiku).

Milline meetod on teie projekti jaoks parem?

Pole raske märgata, et mõlemal meetodil on oma plussid ja miinused, kuid peate teadma, et kui soovite vältida selliseid asju nagu liigne projekteerimine, peate otsuse tegema alguses. See otsus peaks olema iga projekti jaoks individuaalne, kuid need küsimused võivad teid aidata otsuste tegemisel.

Esimene väga lihtne küsimus võiks olla järgmine:

  • Kas see on teie olemasolev Drupali projekt?

Kui teie vastus on jaatav, peaksite ilmselt järgima järk-järgult lahutatud lähenemisviisi ja kasutama Reakti ainult mõne veebisaidi komponendi jaoks, ilma et peaksite mõnele Drupali sisseehitatud tööriistale (paigutused, vaated, kuvarid jne) ütlema „ei”. .

Kui vastus on eitav, peaksite vastama olulisematele küsimustele:

  • Kas esiotsa nõuded on väga ranged? (nad ei taha üldse Drupali õppida) ja kas teie tausta arendustiimil on Drupali kogemus?
  • Kas teie saiti on mitu integreerimist (mõned andmed sisuhoidlatest, meediahaldussüsteemidest, sotsiaalmeediast jne)?
  • Kas teie saidil on rohkem kui üks tarbija (rakendus, mis kasutab saidi pakutavat sisu) ja see sisu tuleks avaldada samal ajal?
  • Kas olete kindel, et teie sait ei vaja Drupali sisseehitatud tööriistu, näiteks paigutusi, vaateid, väljapanekuid jne?

Kui enamik vastuseid on jaatavad ja arvate, et teil või teie meeskonnal on piisavalt oskusi, siis…

Lahutame lahti!