Wpis z mikrobloga

#programowanie #webdev #javascript #react #vue

Potrzebuję zrobić prosty formularz (z kawałkiem jakiejś logiki), zebrać dane z pól i wysłać zapytanie REST-owe.

Normalnie bym to zrobił w np. React lub Angular, ale do tego muszę tworzyć cały projekt (i zapinać jakiegoś Webpacka albo chociaż gulpa). Banalna rzecz.

Ale to jest taka jedna statyczna strona z formularzem i jednym zapytaniem. Nie chce podpinać Webpacka i budować całego frontu.

10 lat temu użyłbym po prostu jQuery.
5 lat temu użyłbym AngularJS (wpinało się jako bibliotekę w
  • 16
@brakloginuf: no nie potrzebuję frameworka. React to nie framework.

Ale robienie w czystym JS document.getElementById i wysyłanie zapytań przez new XMLHttpRequest() to trochę lipa, nie?
Mówię, że najbardziej to by mi pasowało jQuery.
Ale wstyd tego używać w 2020 :/
@brakloginuf: racja, że zamiast getElementById mogę wybrać po selectorze i zamiast XMLHttpRequest jest fetch. Ale to nadal pisanie całości w HTML i wydłubywanie pól. A jak mam jakąś logikę (np. jak ktoś zaznaczy checkboxa, to ma się pokazywać inne pole w formularzu), to babranie się z ręcznym wstawianiem i usuwaniem z DOM. A tak w React lub Angular miałbym ładne małe komponenciki.
@kuite22: Blazor jest pod .Net. To całkiem inne zastosowanie.
Trzeba mieć pod to aplikację backendową w .Net. Jakbym chciał serwować stronę z serwera, to pod Springiem w Javie bym sobie używał jakiegoś Spring MVC, JSP, Thymeleaf czy JSF. Ale nie o to mi chodzi. Wyobraźmy sobie, że nie mam backendu, a strzelam REST-em do czyjegoś backendu.

@Chanandler: pierwszy raz słyszę o htm. Chyba nie jest zbyt popularne. Może dlatego, że
@mk321:

Na pewno nie trzeba tego budować (widzę coś wspomniane o Babel)?


nie, htm is JSX-like syntax in plain JavaScript - no transpiler necessary.

możesz sobie wrzucić https://unpkg.com/htm@3.0.4/preact/standalone.umd.js w script i pisać normalny JSX (waga to jakieś 12kb), ktoś inny zasugerował Vue, w nim możesz zrobić co chcesz wrzucając w script tag ale waży znacznie więcej (ponad 100 kb), ponieważ ładujesz cały kompilator, imho dla 1 formularza nie warto