Napisałem prosty komponent w Vue-3, który służy do uploadu plików. Bodźcem było to, że chciałem móc zadać, ile plików jednocześnie ma być ładowanych. Jest ogólny, prawie niczego nie wymusza, daje pełny feedback (progress w %, błędy, pliki w kolejce, pliki właśnie ładowane, pliki już załadowane, itp.), pracuje na slotach (po jednym dla każdego stanu) z callbackami i zdarzeniach. Można go użyć zarówno w gołym Vue-3, jak i z np. Quasarem.
Link do demo tego uploadera: https://vite.js29a.usermd.net/#/q/upload
To demo ładuje pliki 'w kosmos', tzn. na mój serwer, ale tylko z feedbackiem w formacie JSON, który zresztą jest wyświetlany 1:1. Można bez problemu zwracać np. miniaturki plików graficznych - potrzeba dosłownie parę linijek kodu. Błąd można wymusić przez plik o nazwie 'err.html'.
Pliki dodaje się przez przycisk 'Pick' albo drop w polu. Auto start - rozpoczynanie uploadu od razu po zadaniu plików. Auto reset - automatyczny powrót do stanu początkowego, bez raportu o załadowanych plikach. Keep going - błąd nie przerywa procedury uploadu, na końcu pojawi się info o błędach.
Wiem, grafika jest do niczego. Ogólnie do jest test stosu Vite - Quasar - Vue-3, więc jest tu sporo przycisków 'po nic', ale chodzi mi o sam sens publikacji uploadera. Jakby ew. doszło do publikacji, to przerobiłbym to na gołe Vue-3, żeby nie zaciemniać sprawy.
No i mam dylemat - temat (chyba) nadaje się na artykuł, ale nie wiem, czy warto go pisać. Jest tam parę 'smaczków', da się to łatwo połączyć także z OAuth2. Jakie jest Wasze zdanie - publikować to, czy nie warto? Średniozaawansowanym chyba by pomogło ...
Nowości na moim "blogu":
Od dziś możecie tam używać kontrolki instant search, czyli wyszukiwania dynamicznego. :) (Jest to jedynie dostępne wyszukiwanie na mojej stronie w tej chwili).
Jak działa? Wpisuje się frazę i na bieżąco, po każdym wpisanym znaku, wyświetlane są pod spodem wyniki.
Co do kwestii technicznych: jako że jQuery ($.get
oraz $.ajax
) nie wczytywało plików XML tak, jak chciałem, wybrałem użycie "domyślnego AJAX-a", dostępnego w JS. Ten już działa w porządku. Nie jest to może jeszcze dopieszczone zarówno od strony JS, jak i CSS, ale pierwotne założenie spełnia, więc opublikowałem. :)
Co prawda, zdaję sobie sprawę, że ma to i negatywną stronę – może działać inaczej, lub nie działać w ogóle, na urządzeniach mobilnych. Być może zostanie to przeze mnie w przyszłości jakoś naprawione osobną stroną wyszukiwania, być może nie. Jeśli potrzeba, piszcie do mnie tu, lub np. dodajcie issue w projekcie na GitHubie.
Miłego wyszukiwania. :)
@no_solution_found: jak napisałem, na razie chyba dam sobie spokój z funkcjonalnością (ew. będę poprawiać już napisany kod), a zacznę tworzyć jakieś wpisy ;) (od czasu do czasu – nie obiecuję żadnej regularności).
UDPATE: Kontrolka umieszczona jest na każdej stronie (na głównej też) na samej górze, tuż obok linku z RSS. Dodaję zrzut ekranu, jak to wygląda. :)
UPDATE 2: Oczywiście jak zawsze chętnie przeczytam, co tym myślicie; a może ktoś zauważy jakieś błędy w kodzie lub niedopracowanie w wyglądzie strony?
#blog #news #wyszukiwanie #instant-search #jquery #javascript #xml #web #sam-sobie-napisałem #feedback
WypierdzistyyPublikuj na swojego githuba jako projekt, na front takie projekty są mile widzialne, ja na jednym poście na forum komuś edycję filmu napisałem z użyciem ffmpeg przeglądrakowego i potem pobranie tego jajca, szczerze to przeglądarki dają duże możliwości i jak ktoś jakimś odbieraniem i udostępnianiem plików od użytkownika się nie zajmował to zwykle może nie wiedzieć o jakichś bloblach :>