Giter Site home page Giter Site logo

Comments (14)

piranha avatar piranha commented on May 26, 2024 2

Хмм, знаешь, я подумал что на большую часть вопросов я отвечу просто рассказом в начале плюс демкой того, как оно работает. Но я на твои могу прям тут ответить, а на стриме уточнить, если надо будет.

  1. Потому что был/есть сервер-сайд рендеринг, а всё остальное помогало минимально — попробую это чуть раскрыть.
  2. Я наверное вообще в целом про SPA, чем про один конкретный реакт. :)
  3. На самом деле с радостью, но у него есть 1 вещь, которую Карсон похоже любит, что ли: наследование. Меня она тупо бесит. Я покажу потом пример, о чём речь, но он чёта вообще не горит желанием это менять, а я не могу себя заставить юзать. Я бы сказал, что это можно вообще пообсуждать, в чём разница с htmx (и почему unpoly кошмар :)).
  4. Работает клёво, лучше чем стандартные "контроллер + шаблон", так что пока так и продолжаем
  5. Кароч история такая. Если ты даёшь браузеру с сервера готовый хтмл - у тебя всё быстро. А если ты шлёшь какие-то куски, жсоны, объединяешь это всё - то через некоторое время у тебя всё медленно. :) Життя бентежне! Я разное попробовал и понял, что цель - уменьшение кол-ва жса. А это знач надо как можно больше всего перенести на сервер.
  6. Мы отдаём страницы для анонимов и потом подгружаем кусочки для авторизованного юзера. С дебагом вслух, окей? А то хз чё писать, вроде как-то терпимо всё.
  7. (executeRequests 16) Та не, просто игрался, надо ж какое-то время выбрать, за какое запросы в батч соберутся? Ну как-то так, типа кто за кадр не успел - не так и хотел.
  8. (IntersectionObserver) Слушай, интересно, вполне можно сделать видео с разбором кода. Оно self-contained, довольно маленькое... только не понимаю до конца, как это сделать, чтоб было не скучно. :)

from twinspark-js.

piranha avatar piranha commented on May 26, 2024 1

Таймаут то херня! Вопрос в том шоб обратно все распарсить.

Но ты меня убедил, как нить по свободе изучу вопрос :)

from twinspark-js.

piranha avatar piranha commented on May 26, 2024 1

Figma - це точно коли не треба :)

from twinspark-js.

piranha avatar piranha commented on May 26, 2024 1
  1. Є отакий екшен
twinspark.func({anon: (o) => !window.auth()});

А потім юзаєм отак (см в сорсі kasta.ua):

<div id="up" 
     ts-req="/api/v2/ssr/header" 
     ts-req-selector="#up" 
     ts-req-before="anon, prevent, gtmOnly chua-anon" 
     ts-trigger="load" 
     class="header">

ts-req-before заважає йому виконуватися для аноніма, а так load триггерне завантаження цього елементу для звичайного користувача.

  1. Так, але ми це й так робили для того, щоб серверний хтмл якомога ефективніше кешувати

  2. А ми оперуємо компонентами, просто деякі компоненти виставляються в HTTP-апі. Зараз це трохи ручний процес (хтось йде і додає новий урл для компоненти), але я хочу зробити якийсь загальний механізм і для виставлення, і для використання.

from twinspark-js.

JAremko avatar JAremko commented on May 26, 2024

@piranha Спасибо! Ждем стрима.

from twinspark-js.

piranha avatar piranha commented on May 26, 2024

А я правильно понял, что Vaadin на беке кучу жса генерит по инструкциям на джаве? Или в чём там суть?

from twinspark-js.

JAremko avatar JAremko commented on May 26, 2024

@piranha Да, основная идея это пилить убийцы экселей и тп руками корпоративных жавистов - в браузере.
Клиентская часть это чисто вьюшка(раньше на GWT щя веб компоненты) и да это дело из готовых блоков на Java собирается. Логика на сервере гоняется поэтому оно на каждый чих раундтрипит. Кто-то пытался Clojure прихреначить но хзн. Вопрос только один. Зачем это в браузере если оно с пингом работать не будет 😕

Демка https://demo.vaadin.com/dashboard

from twinspark-js.

JAremko avatar JAremko commented on May 26, 2024

@piranha

На самом деле с радостью, но у него есть 1 вещь, которую Карсон похоже любит, что ли: наследование. Меня она тупо бесит. Я покажу потом пример, о чём речь, но он чёта вообще не горит желанием это менять, а я не могу себя заставить юзать. Я бы сказал, что это можно вообще пообсуждать, в чём разница с htmx (и почему unpoly кошмар :)).
Работает клёво, лучше чем стандартные "контроллер + шаблон", так что пока так и продолжаем

А нельзя законтрибутить в htmx конфиг который эту фишку вырубает? Или она прямо там весь код пронизывает? Тут кажется что-то в этом духе обсуждали и даже замаржили bigskysoftware/htmx#244

from twinspark-js.

piranha avatar piranha commented on May 26, 2024

Ну мож, надо подумать. Мне просто кажется что конфигурация такого левела - это плохо. Эта херня учит плохому, вот шо. Но нельзя не отметить то, что хтмх хорошо пошел и чувак прилично сил вложил и продолжает.

Кароч, надо подумать. Вкороткую - сапортить твинспарк много времени не занимает, зато он работает ровно как задумано. :)

Ну я думал думал, и батчи тоже придется контрибьютить, а это наносит довольно серьезные ограничения в виде того как хтмл с сервера надо возвращать. В твинспарке оно так задумано, а там обратную совместимость поломает, или придется выдумывать два режима получения...

А без батчей эта вся херня становится неэффективной до крику)

from twinspark-js.

JAremko avatar JAremko commented on May 26, 2024

@piranha Про батчи тоже тикеты были bigskysoftware/htmx#430 и bigskysoftware/htmx#129 (магия какая-то).

Батчи как адхок с таймером должно быть несложно запихнуть. Может как реальное расширение уже попотеть
прийдется.. Но интерес к этому похожее есть. Кстати у них интересные расширения есть.

from twinspark-js.

JAremko avatar JAremko commented on May 26, 2024

Ну я думал думал, и батчи тоже придется контрибьютить, а это наносит довольно серьезные ограничения в виде того как хтмл с сервера надо возвращать. В твинспарке оно так задумано, а там обратную совместимость поломает, или придется выдумывать два режима получения...

Немного поколупал. Там для парсинга ответа есть экстеншен поинт transformResponse его юзает темплейтер может прямо из этой чтуки и посвапать дополнительные элементы/тригирить эвенты на худой конец 🤔

from twinspark-js.

JAremko avatar JAremko commented on May 26, 2024

@piranha Если я правильно понял то логика наследование запихана в getClosestMatch который просто рекурсивно чекает родительский элемент. Так что тут вообще просто будет это дело вырубить конфигом/патчем.

from twinspark-js.

s-stude avatar s-stude commented on May 26, 2024

У яких випадках twinspark не треба юзати? Anti-cases?

from twinspark-js.

s-stude avatar s-stude commented on May 26, 2024
  • як ви хендлите інший юай для авторизованих користувачів?
  • чи я правильно розумію, що кожний блок (який для авторизованих виглядяє по іншому) має зробити xhr, щоб отримати новий ui?
  • де складати усі html шматочки темплейтів, якщо я маю оперувати не компонентом (типу меню юзера) а меню айтемом у випадку оновлення twinspark-ом якогось там шматка html? [доречі це дуже схоже на той самий підхід з jquery де ми оновлюемо цсс чи чайлд ноду. чи не стане це кошмаром?]

from twinspark-js.

Related Issues (10)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.