freefeed-react-client icon indicating copy to clipboard operation
freefeed-react-client copied to clipboard

[WIP] Try to upgrade to React 18

Open davidmz opened this issue 3 years ago • 5 comments

Closes #1540

davidmz avatar Apr 22 '22 15:04 davidmz

🎊 PR Preview a040c45c011f6ad088ae5201fc1332e39ab0e0d1 has been successfully built and deployed to https://FreeFeed-freefeed-react-client-preview-pr-1541.surge.sh

:clock1: Build time: 215.076s

🤖 By surge-preview

github-actions[bot] avatar Apr 22 '22 15:04 github-actions[bot]

На первый взгляд, оно работает, но только на первый. При закрытии лайтбокса возникает ошибка “Cannot read properties of null (reading 'updateScrollOffset')”. При переходе с главной страницы на /friends — “this.dropzone.getActiveFiles is not a function”. В общем, реакт стал слишком асинхронным, и биндинги к сторонним библиотекам к этому не готовы. Дропзону я давно хотел заменить, и есть чем, а вот лайтбокс заменить пока нечем.

davidmz avatar Apr 22 '22 15:04 davidmz

Ну и тесты все сломались, но там, наверное, несложно починить.

davidmz avatar Apr 22 '22 15:04 davidmz

Вообще, я встречал сообщения, что люди вместо React 18 переходят на Preact — он более совместимый, весит в сто раз меньше и даже работает быстрее.

davidmz avatar Apr 22 '22 15:04 davidmz

про тесты: там, видимо, нужно в связке менять:

  • @testing-library/react
  • @testing-library/react-hooks
  • react-test-renderer
  • use-subscription
  • react-redux

indeyets avatar Apr 23 '22 02:04 indeyets