Coder Social home page Coder Social logo

Comments (7)

in19farkt avatar in19farkt commented on June 8, 2024 1

@NikitaRzm очень красиво сделано) Я когда искал решение даже не думал в сторону хока и контекста)) Точно нужно перетянуть этот код в стартер кит, возможно даже оформить отдельным npm-пакетом.

Я бы еще добавил возможность отловить факт того что ничего не бутстрапилось. Будет полезно при предзагрузке вложенных друг в друга асинхронных фич. Типа запускаем этот код в цикле пока не будет нулевая предзагрузка. Но в таком случае придется помнить о такой особенности, и в каждом getJobCreator придется делать проверку на то выполненна ли уже предзагрузка

from react-redux-starter-kit.

chmnkh avatar chmnkh commented on June 8, 2024

Насколько я понимаю все пропало, и бутстраппер не будет работать с хуками. Грубо говоря, за то, что вызывается на хуках отвечают же рендерер-либы (реакт дом и всякое такое). А react-tree-walker, который бутстраппером юзается, берет и рендерит компоненту тупым вызовом метода или функциональной компоненты. Если подебажить с брейкпоинтом в рендере можно четко это увидеть.

Через дебаггер получил: вот тут на 165 строке вызывается рендер, а это как раз коллбэк с 278 строки, т.е. тупо вызывается функ. компонента, и никакие хуки при таком подходе в принципе не могут работать.

from react-redux-starter-kit.

in19farkt avatar in19farkt commented on June 8, 2024

поищи в react-tree-walker и react-async-bootstrapper иши на эту тему, если там тишина, то оставь им ишьюс и кинь сюда ссылку на него.

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

from react-redux-starter-kit.

NikitaRzm avatar NikitaRzm commented on June 8, 2024

Возьмите бустраппер с птички. react-tree-walker тот еще костыль, а руками можно запилить норм. У нас на птичке замечательно работает при том конструкция довольно простая. И выпилите этот вендор код - при том довольно говеный код :)

from react-redux-starter-kit.

in19farkt avatar in19farkt commented on June 8, 2024

А там как-то это переписали? Я помню там руками на сервере мы запускали всякие асинхронные вещи, причем для всех раутов одинаковые.

from react-redux-starter-kit.

NikitaRzm avatar NikitaRzm commented on June 8, 2024

Да, я перепилил, вот обвязка: https://gitlab.com/documents-project/order-form/blob/master/src/shared/helpers/bootstrap.tsx

Вот так используем: https://gitlab.com/documents-project/order-form/blob/master/src/features/ordersHistory/view/containers/OrdersHistory/OrdersHistory.tsx#L65

И в server.tsx также бутстрапим на отдельном дереве )

from react-redux-starter-kit.

chmnkh avatar chmnkh commented on June 8, 2024

@NikitaRzm

Да, я перепилил, вот обвязка: https://gitlab.com/documents-project/order-form/blob/master/src/shared/helpers/bootstrap.tsx

Вот так используем: https://gitlab.com/documents-project/order-form/blob/master/src/features/ordersHistory/view/containers/OrdersHistory/OrdersHistory.tsx#L65

И в server.tsx также бутстрапим на отдельном дереве )

у меня 404

доступа нету?

from react-redux-starter-kit.

Related Issues (20)

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.