Czego użyć react/angular/vue?

Czego użyć react/angular/vue?

Wątek przeniesiony 2024-05-09 11:13 z JavaScript przez Riddle.

MI
  • Rejestracja:11 miesięcy
  • Ostatnio:31 minut
  • Postów:89
0

Piszę apkę w django i czystym javascript bez api.
Kończę główną funkcjonalność, ale doszedłem do wniosku, że dane importowane do apki będą zbyt wrażliwe. Chodzi mi po głowie wrzucenie djangorestframework z react/angular/vue i przepisanie kodu. Która z technologii frontendowych byłaby najłatwiejsza do wprowadzenia na tym etapie?

Xarviel
  • Rejestracja:ponad 3 lata
  • Ostatnio:około godziny
  • Postów:847
1

Z tej trójki to Vue jest najbardziej "idiotoodporny", bo posiada dużo rzeczy wbudowanych w składnie.

edytowany 1x, ostatnio: Xarviel
MI
  • Rejestracja:11 miesięcy
  • Ostatnio:31 minut
  • Postów:89
0

Nie jestem biegły w javascript. Vue ma jakieś gotowe komponenty ui do wykorzystania? Mam na myśli odpowiednik angular materials

edytowany 1x, ostatnio: mitowski
Xarviel
  • Rejestracja:ponad 3 lata
  • Ostatnio:około godziny
  • Postów:847
2

https://www.ropstam.com/best-vue-ui-component-libraries/ (nie czytałem całego wpisu)

Tutaj masz opisane 15 bibliotek, ale pewnie jest tego jeszcze więcej.

edytowany 2x, ostatnio: Xarviel
JB
  • Rejestracja:około 2 lata
  • Ostatnio:5 dni
  • Lokalizacja:Holandia
  • Postów:843
0

Nic nie zastąpi pomyślunku. Myśl jak druga strona i nie będziesz potrzebował bibliotek. Ja tak robię.


AD
I do czego cię tondoprowadzilo?
JB
Do najlepszej roboty w mieście i 67 nagrań na YT i 42 subskrybentów
MI
  • Rejestracja:11 miesięcy
  • Ostatnio:31 minut
  • Postów:89
0

hackujesz swoje apki?

JB
  • Rejestracja:około 2 lata
  • Ostatnio:5 dni
  • Lokalizacja:Holandia
  • Postów:843
1
mitowski napisał(a):

hackujesz swoje apki?

Wszystko opiera się na operacjach wejścia wyjścia a te mogą być tylko 0 albo 1 w określonym miejscu i czasie. Ogarniasz to i nie ma cudów, że zamiast bitu wpadnie np. kolor żółty.


Zobacz pozostałe 4 komentarze
JB
@mitowski: Funkcja strcmp() (porównywanie ciągów znaków) i instrukcja warunkowa if wykonują różne zadania, więc trudno jest porównać je pod względem obciążenia procesora w sposób bezpośredni. 1. strcmp(): Funkcja strcmp() porównuje dwa ciągi znaków i zwraca wartość, która wskazuje, czy jeden ciąg jest leksykograficznie mniejszy, większy lub równy drugiemu. Ta funkcja musi porównać każdy znak w obu ciągach, co oznacza, że ​​czas wykonania może zależeć od długości obu ciągów. 2. Instrukcja warunkowa if: Instrukcja if porównuje wartość jednej zmiennej z
JB
z określoną wartością lub innym wyrażeniem logicznym. Jest to prostsza operacja niż porównywanie całych ciągów znaków, ponieważ operuje na pojedynczych wartościach. Ostatecznie, porównując oba przypadki pod względem obciążenia procesora, strcmp() może być bardziej złożone obliczeniowo, szczególnie dla długich ciągów znaków, ponieważ musi przeglądać każdy znak w obu ciągach. Jednakże, w przypadku pojedynczej instrukcji warunkowej if, obciążenie procesora jest znacznie mniejsze, ponieważ polega ona tylko na prostym sprawdzeniu warunku logicznego.
JB
przy masowych zapytaniach to już może być odczuwalne. Ale ja to dopiero zacząłem robić. To jest mój punkt wyjścia.
MI
przeanalizuje to, dzięki za tipa
TheSinOfGreed
  • Rejestracja:około 4 lata
  • Ostatnio:6 miesięcy
  • Postów:12
1

Trochę nie rozumiem, chcesz dodać framework frontowy dlatego że dane importowane z apki (z django) na front-end będą/są zbyt wrażliwe? I rozumiem że w django do generowania frontu używasz jakiegoś template engine? Bo to że dodasz jakiś framework nie sprawi że dane będą bezpieczniejsze, raczej będą nawet mniej bezpieczne bo logika front-owa będzie wykonywana po stronie klienta.

KamilAdam
  • Rejestracja:ponad 6 lat
  • Ostatnio:dzień
  • Lokalizacja:Silesia/Marki
  • Postów:5505
0
TheSinOfGreed napisał(a):

Trochę nie rozumiem, chcesz dodać framework frontowy dlatego że dane importowane z apki (z django) na front-end będą/są zbyt wrażliwe? I rozumiem że w django do generowania frontu używasz jakiegoś template engine? Bo to że dodasz jakiś framework nie sprawi że dane będą bezpieczniejsze, raczej będą nawet mniej bezpieczne bo logika front-owa będzie wykonywana po stronie klienta.

Hm, jak to czytam drugi raz to zgaduje iż Op uważa iż jak poskłada wszystko na froncie to trudniej będzie ukraść treść którą prezentuje na stronie niż jak wygeneruje htmla i wyśle to do przeglądarki.

I od razu wytłumaczenie dla OPa - dalej da się to ukraść a to co dostaniesz po użyciu reacka czyinnego frameworko to to iż google nie zindeksuje twojej strony, no chyba iż będziesz przygotowywać specjalną wersję pod googla generowaną po stronie serwera, no ale wtedy wystarczy iż "hacker" przedstawi się jako google i znów pobierze htmla


Mama called me disappointment, Papa called me fat
Każdego eksperta można zastąpić backendowcem który ma się douczyć po godzinach. Tak zostałem ekspertem AI, Neo4j i Nest.js . Przez mianowanie
MI
  • Rejestracja:11 miesięcy
  • Ostatnio:31 minut
  • Postów:89
0

Wyjaśniłem temat już z @Riddle. Źle rozumiałem działanie api i frameworków

T3
no to napisz tutaj innym, jak już utworzyłeś ten wątek, co źle zrozumiałeś... co za czasy nastały....
MI
api rozumiałem jako bramkę wejście-wyjście, nie wziąłem pod uwagę że już mam interfejs - widoki django. myślałem że frameworki wprowadzają coś ekstra do security, dla ui nie ma sensu tego wrzucać na tym etapie projektu
T3
  • Rejestracja:ponad 16 lat
  • Ostatnio:10 miesięcy
0

zainteresuj się headless CMS (strapi lub contentful), zrób adapter do Twojego API i będziesz miał ładny panel zarządzania.
Ewentualnie django-admin, ale to na pewno znasz.

Inne rozwiązanie to wyciągnięcie dokumentacji OpenAPI Spec (Swagger), wygenerowanie libki do ui za pomocą swagger-codegen (codegen jak mu podasz poprawny swagger.json/yaml, to generuje całą bibliotekę do korzystania z API z frontu) i stworzenie swojego panelu administracyjnego.

Podałem rozwiązania z poziomu konsultanckich, frameworki już wymieniłeś. Z tych, które opisałeś najlepszy będzie dowolny, którego składnia ci się spodoba i zrozumiesz go najszybciej. Aczkolwiek z tym nr R będziesz pewnie dłużej się uczył, bo hooki nie są oczywiste, natomiast w tym na V, jeśli nie będziesz miał znormalizowanych danych w komponentach, to możesz mieć problemy z deep-watchowaniem zmian w plikach, dlatego używaj zasad opisanych w normalizr (uwaga: w 2024 już deprecated). W razie pytań - pisz, pomożemy.


Na każdy złożony problem istnieje rozwiązanie które jest proste, szybkie i błędne.
(by @Aventus)
XS
  • Rejestracja:około 11 lat
  • Ostatnio:5 dni
  • Postów:135
0

Teraz to chyba tylko next.js lub angular. SSR.

Riddle
Administrator
  • Rejestracja:prawie 15 lat
  • Ostatnio:około 11 godzin
  • Lokalizacja:Laska, z Polski
  • Postów:10056
1

Nie ma znaczenia, te same aplikacje można budować z każdą z tych bibliotek.

Ludzie zwracają zbyt dużą uwagę na konkretną bibliotekę, ale za mało na aspekty które faktycznie mają znaczenie: design, modularność, testy.

edytowany 1x, ostatnio: Riddle
Kliknij, aby dodać treść...

Pomoc 1.18.8

Typografia

Edytor obsługuje składnie Markdown, w której pojedynczy akcent *kursywa* oraz _kursywa_ to pochylenie. Z kolei podwójny akcent **pogrubienie** oraz __pogrubienie__ to pogrubienie. Dodanie znaczników ~~strike~~ to przekreślenie.

Możesz dodać formatowanie komendami , , oraz .

Ponieważ dekoracja podkreślenia jest przeznaczona na linki, markdown nie zawiera specjalnej składni dla podkreślenia. Dlatego by dodać podkreślenie, użyj <u>underline</u>.

Komendy formatujące reagują na skróty klawiszowe: Ctrl+B, Ctrl+I, Ctrl+U oraz Ctrl+S.

Linki

By dodać link w edytorze użyj komendy lub użyj składni [title](link). URL umieszczony w linku lub nawet URL umieszczony bezpośrednio w tekście będzie aktywny i klikalny.

Jeżeli chcesz, możesz samodzielnie dodać link: <a href="link">title</a>.

Wewnętrzne odnośniki

Możesz umieścić odnośnik do wewnętrznej podstrony, używając następującej składni: [[Delphi/Kompendium]] lub [[Delphi/Kompendium|kliknij, aby przejść do kompendium]]. Odnośniki mogą prowadzić do Forum 4programmers.net lub np. do Kompendium.

Wspomnienia użytkowników

By wspomnieć użytkownika forum, wpisz w formularzu znak @. Zobaczysz okienko samouzupełniające nazwy użytkowników. Samouzupełnienie dobierze odpowiedni format wspomnienia, zależnie od tego czy w nazwie użytkownika znajduje się spacja.

Znaczniki HTML

Dozwolone jest używanie niektórych znaczników HTML: <a>, <b>, <i>, <kbd>, <del>, <strong>, <dfn>, <pre>, <blockquote>, <hr/>, <sub>, <sup> oraz <img/>.

Skróty klawiszowe

Dodaj kombinację klawiszy komendą notacji klawiszy lub skrótem klawiszowym Alt+K.

Reprezentuj kombinacje klawiszowe używając taga <kbd>. Oddziel od siebie klawisze znakiem plus, np <kbd>Alt+Tab</kbd>.

Indeks górny oraz dolny

Przykład: wpisując H<sub>2</sub>O i m<sup>2</sup> otrzymasz: H2O i m2.

Składnia Tex

By precyzyjnie wyrazić działanie matematyczne, użyj składni Tex.

<tex>arcctg(x) = argtan(\frac{1}{x}) = arcsin(\frac{1}{\sqrt{1+x^2}})</tex>

Kod źródłowy

Krótkie fragmenty kodu

Wszelkie jednolinijkowe instrukcje języka programowania powinny być zawarte pomiędzy obróconymi apostrofami: `kod instrukcji` lub ``console.log(`string`);``.

Kod wielolinijkowy

Dodaj fragment kodu komendą . Fragmenty kodu zajmujące całą lub więcej linijek powinny być umieszczone w wielolinijkowym fragmencie kodu. Znaczniki ``` lub ~~~ umożliwiają kolorowanie różnych języków programowania. Możemy nadać nazwę języka programowania używając auto-uzupełnienia, kod został pokolorowany używając konkretnych ustawień kolorowania składni:

```javascript
document.write('Hello World');
```

Możesz zaznaczyć również już wklejony kod w edytorze, i użyć komendy  by zamienić go w kod. Użyj kombinacji Ctrl+`, by dodać fragment kodu bez oznaczników języka.

Tabelki

Dodaj przykładową tabelkę używając komendy . Przykładowa tabelka składa się z dwóch kolumn, nagłówka i jednego wiersza.

Wygeneruj tabelkę na podstawie szablonu. Oddziel komórki separatorem ; lub |, a następnie zaznacz szablonu.

nazwisko;dziedzina;odkrycie
Pitagoras;mathematics;Pythagorean Theorem
Albert Einstein;physics;General Relativity
Marie Curie, Pierre Curie;chemistry;Radium, Polonium

Użyj komendy by zamienić zaznaczony szablon na tabelkę Markdown.

Lista uporządkowana i nieuporządkowana

Możliwe jest tworzenie listy numerowanych oraz wypunktowanych. Wystarczy, że pierwszym znakiem linii będzie * lub - dla listy nieuporządkowanej oraz 1. dla listy uporządkowanej.

Użyj komendy by dodać listę uporządkowaną.

1. Lista numerowana
2. Lista numerowana

Użyj komendy by dodać listę nieuporządkowaną.

* Lista wypunktowana
* Lista wypunktowana
** Lista wypunktowana (drugi poziom)

Składnia Markdown

Edytor obsługuje składnię Markdown, która składa się ze znaków specjalnych. Dostępne komendy, jak formatowanie , dodanie tabelki lub fragmentu kodu są w pewnym sensie świadome otaczającej jej składni, i postarają się unikać uszkodzenia jej.

Dla przykładu, używając tylko dostępnych komend, nie możemy dodać formatowania pogrubienia do kodu wielolinijkowego, albo dodać listy do tabelki - mogłoby to doprowadzić do uszkodzenia składni.

W pewnych odosobnionych przypadkach brak nowej linii przed elementami markdown również mógłby uszkodzić składnie, dlatego edytor dodaje brakujące nowe linie. Dla przykładu, dodanie formatowania pochylenia zaraz po tabelce, mogłoby zostać błędne zinterpretowane, więc edytor doda oddzielającą nową linię pomiędzy tabelką, a pochyleniem.

Skróty klawiszowe

Skróty formatujące, kiedy w edytorze znajduje się pojedynczy kursor, wstawiają sformatowany tekst przykładowy. Jeśli w edytorze znajduje się zaznaczenie (słowo, linijka, paragraf), wtedy zaznaczenie zostaje sformatowane.

  • Ctrl+B - dodaj pogrubienie lub pogrub zaznaczenie
  • Ctrl+I - dodaj pochylenie lub pochyl zaznaczenie
  • Ctrl+U - dodaj podkreślenie lub podkreśl zaznaczenie
  • Ctrl+S - dodaj przekreślenie lub przekreśl zaznaczenie

Notacja Klawiszy

  • Alt+K - dodaj notację klawiszy

Fragment kodu bez oznacznika

  • Alt+C - dodaj pusty fragment kodu

Skróty operujące na kodzie i linijkach:

  • Alt+L - zaznaczenie całej linii
  • Alt+, Alt+ - przeniesienie linijki w której znajduje się kursor w górę/dół.
  • Tab/⌘+] - dodaj wcięcie (wcięcie w prawo)
  • Shit+Tab/⌘+[ - usunięcie wcięcia (wycięcie w lewo)

Dodawanie postów:

  • Ctrl+Enter - dodaj post
  • ⌘+Enter - dodaj post (MacOS)