Jump to content
php.lv forumi

Recommended Posts

spa - Single-page application, gribās pameiģīnāt kaut ko jaunu un gribētos saprast....

 

Vai ar reactjs var uzbūvēt kaut ko tik "milzīgu" kā draugiem.lv, ar daudz fiškām, klikšķināmām vietām utt... un vai tas būtu seo draudzīgs, un vai tas ir prāta darbs, respektīvi vai labāk kaut ko tādu būvēt uz php,python....

 

Vai tam būtu jēga...

ko likt "server side" ?

 

Īsāk sakot runa ir par apjomīga izmēra "Single-page application" tipa mājaslapām...

Link to comment
Share on other sites

Esmu ar react taisījis palielu mājaslapu, kur praktiski viss sastāvēja no React komponentiem:

 

Lielākā problēma ir React sajūgt kopā ar jquery pluginiem. Piemēram ja gribi ajaxīgu failu augšupielādi kaut kur un gribi izmantot Blueimp pluginu, tad būs problēmas viņus sasaistīt. Gatavus React komponentus tādām lietām ka wysiwyg, ajax uploads vai vnk parastiem slaideriem parasti dabūt nevar.

 

Otra problēma ir domstarpības ar dizaineriem, kas piegādā CSS un HTML. Jo Reactam vajag JSX.

 

Vēl viens sarežģījums (kas gan nav specifisks React bet vispār SPA) bija darboties ar CSRF tokeniem, expired sesijām.

Edited by qwerty
Link to comment
Share on other sites

Ir jāsaprot, ka react ir tikai view layeris iekš single page appa struktūras, kas kalpo priekš viewu sistēmas. Lai uzbūvētu lielāku projektu, tur nāk klāt vēl čupa lietas, kas vajadzīgas, lai kkas actually strādātu, vai nu flux patternā, jebkādā citā veidolā, bet jebkurā gadījumā datu plūsma kkā būs jāmenedžē klientā un "apjomīgā" projektā tos datu requestus stabili neveiksi no react gala un būs nepieciešams kkas, kas atbilstu modelim/datu storei vai tamlīdzīgi.

 

Sajūgt ārējos pluginus vajag kādu laiciņu, lai saprastu kā tas jādara, bet līdz šim nekādu lielu problēmu nav bijis, ir ajax uploads bijis un citi plugini.

 

Par SEO draudzīgumu - standarta vizītkartes lapas, kurās nav praktiski nekāda dinamiska kontenta veidot ar react ir diez gan bezjēdzīgi, jo reacta ideja un spēks ir tieši dinamiskam kontentam, kur modularizācija pa komponentēm dod kkādu value, kas parasti ir raksturīgs tieši aplikācijas iekšienē, kur SEO ir pie vienas vietas. Bet ja vajag lietot tomēr arī "ārpusē" react saturu kkādu iemeslu dēļ, tad to var renderēt arī server side, attiecīgi iegūstot +/- tādu pašu rezultātu kā ražojot html ar standarta server side rīkiem.

 

Bet atbildot uz jautājumu - jā, react var izmantot kā view layeri arī liela apjoma projektiem.

Edited by yuppio
Link to comment
Share on other sites

Ar React būvēju palielus interfeisus, kur galā sanāk 2 faili, index.html un bundle.js + attēli. Var uz desktopa failus palaist un darboties, jo servera puse ir pilnvērtīgi neatkarīga. Ar sesijām ir diezgan neērti.

Datu paraidi, tai skaitā failu ielāde, ir viens ceļš - socket.io.

 

Mēģināt piejūgt jQuery pie React? Why? Jo tālāk no jQuery, jo labāks miegs un potence. 

 

No serveru puses, drausmīgi ērts un viegls ir Sails.js, minūtes laikā var pacelt api un sākt darboties, testēt. Iebūvēta lokāla datubāze - testiem ir perfekta. ORM atbalsta kaudzi datubāžu veidu, ja vēlies pārslēgties, vienā konfigurācija norādi - viss. Minimāli skeilot ar vienkārši, sesiju datu konfigurācijā norādi redis un gatavs.   

Edited by Wuu
Link to comment
Share on other sites

Ar react tieši var uzbūvēt lielus un sarežģītus SPA. Tieši react iekšēju struktūra ļauj vidējajam programmētājam nedomāt par tām optimizācijām, kuras būs vajadzīgas citos FW, ja SPA būs liels.

React kalpo principā gan kā view daļa, gan arī kā kontroleris, modeļa daļu gan būs jāpapēta, tur ir vairāki labi varianti un viss atkārīgs no vajadzībām. Tāpat arī nedaudz jāiedziļinās teorijā par kopējo aplikācijas strūktūru (gataviem struktūras paterniem).

 

Par SEO draudzību. Kas attiecas uz googli, tad tā jau sen laiž savā kravlerī javascriptu un tu vari principā aizsūtīt sākumā dažu rindiņu html ar script tagu uz skriptu un visu pārējo, ģenerēt, ielādēt, utml. kā gribi un viss SEO strādās lieliski.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...