при добавлении нового сообщения flatlist делает скролл на высоту сообщения, как можно избежать этого?
А что если инвертировать не сам Flatlist а данные которые ему подаются?
что-то пробовал, но тогда возникает проблема при рендере FlatList, а именно когда я захожу в чат, он показывает сообщения сверху(первые, а не внизу(последние) и scrollToEnd в таком случае не работает нормально, видимо потому что FlatList рендерится частично
флет лист и не будет рендерится полностью в этом его и смысл чтоб снизить нагрузку он рендерит какую-то часть и при скроле то что показывал удаляет а то что должен показать подгружает и причем сколько компонентов он должен подгрузить ты сам задать можешь
вот для этого я и использую inverted)
так может саму концепцию архитектуры поменяешь? и это будешь делать не через флет лист?
а через что еще можно сделать чат сообщения? образно тот же скролл вью, но производительность будет похуже?
через меп ты прогрузишь все и если у тебя будет 1000 сообщений так лаганет что телефоны с твоей приложухой будут алтернативным обогревателем для европы этой зимой ни разу не реализовывал чат но по любому есть либы погуглить для тебя?)
как то мне предлагали сделать 1 проект но мы не сошлись с ним в некоторых вопросах там была указана такая либа я спросил что это это было для чата https://github.com/volga-volga/react-native-webim
https://webim.ru/ или официально их ресурс как из идей откуда копать пока более мудрые работают
еще как идея у тебя идет флет лист с начала массива до конца (1 сообщение - последнее сообщение) а что если ты этот массив перевернешь и тогда он будет отображать с конца и идти в начало ? но опять же это нагрузка лишняя но как идея кажется впустую думаю о чужих заботах)
просто перевернуть массив не могу, проблема тогда со скрлоллом к последнему элементу
сейчас он так и отображается, первое сообщение во флет листе(сверху) является самым старым
а в массиве оно какое так же ведб первое?
начал сам гуглить https://getstream.io/chat/react-native-chat/tutorial/ да там этой дряни как говна за баней тут сложность выбора а не реализации тогда
у меня свой сервер и свой ui) эти сервисы избыток для меня
https://github.com/facebook/react-native/issues/25239 вот, кстати, это issue, если интересно)
Мне скорее интересно как ты это реализуешь если честно ) Если все самописно хочешь сделать
пока не очень представляю, целый день потратил)
в теории если скролл офсет не = 0 то не будет подскроливать, так что можно попробовать скроллить программно на 1 поинт
Посмотри https://github.com/FaridSafi/react-native-gifted-chat?ysclid=l5cmf0kfco228665538, использовал его для написания двух чатов. Особо проблем не встретил
спасибо, пока ещё осталось желание свой сделать 😅
Обсуждают сегодня