@reactnative_ru

Страница 867 из 878
Igor
19.10.2018
10:35:52
Совершенно случайно вдруг кто-нибудь сталкивался: задача заключается в том что пользователь должен иметь возмодность тачем отредактировать растровую картинку. Те условно говоря нужна примитивная рисовалка на канвасе/контексте В RN нет апи доступа к графическим подисистемам, поэтому нужен врапнутый нативный компонент Мб кто-то с чем-то таким работал

Aleksey
19.10.2018
11:40:34
Подскажите как в RN лучше картинки импортить. Читал что вот так не рекомендуется const splashIcon = require('src/img/splash_logo.png'); Или так лучше: <Image source={require('/react-native/img/favicon.png')}/>

Dmitry
19.10.2018
11:46:22
Может будут у кого мысли, я хотел модифицировать mapDispatchToProps внутри connect для передачи туда дополнительных данных, но выходи так, что connect вызывается самым первым еще до рендера самого компонента и соответсвенно данных

Как бы его придержать ?

Google
Mukhamed
19.10.2018
11:52:46
У кого было такое, на андроиде не ранится

А когда remote debug включаю то не выдаёт этой ошибки

Illia
19.10.2018
11:59:28
Все добрый день. А как получить доступ и разрешение на сохранение файло на ios? Юзаю библиотеку joltup/rn-fetch-blob Или вообще возможно сохранять файлы на ios платформу?

Gena
19.10.2018
12:23:55
Может будут у кого мысли, я хотел модифицировать mapDispatchToProps внутри connect для передачи туда дополнительных данных, но выходи так, что connect вызывается самым первым еще до рендера самого компонента и соответсвенно данных
Это невозможно. Но если посмотреть внимательно, там есть апи для этого (его использование частично "убивает" оптимизацию рендера, но когда очень надо там всё есть). Если конечно я правильно угадал, почему эта задача возникла.

Gena
19.10.2018
12:29:18
Да, я видел, но не помогло
Т.е. нужны не просто props компонента в мэппере, а что-то ещё? Если стейт нужен - труба... надо бить на два компонента и connect на внутреннем дергать, а стейт во внешнем держать и передавать вниз как props

Но redux не моя тема )

Dmitry
19.10.2018
12:30:00
Да не, там ни стейт ни пропсы не нужны

Google
Dmitry
19.10.2018
12:31:20
Я просто делаю "редаксовский конвейер", и хотел туда подсунуть экшены, чтобы проще было биндить. Ох щас камни полетят)

Dmitry
19.10.2018
12:37:29
до mobx мы еще не дошли

Illia
19.10.2018
12:40:59
@iLonny поставил путь сохранения: DocumentDir, записывает файл в директорию /var/mobile/Containers/Data/Application/DC36939.../Documents/y2E7lMsY5ryL1bJ9ewZpvAaC082Gq6ZV.jpg но как мне теперь его просмотреть?

Play
19.10.2018
12:43:25
Передаю картинку в компонент: <Children iconRightPlus={iconRightPlus} /> Предворительно импротрируя ее import iconRightPlus from '../../../images/filter.png' Далее все как обычно, пытаюсь подключить ее: <Image source={iconRightPlus} style={{ width: 30, height: 30 }} /> Картинка не отображается, в чем дело?

Illia
19.10.2018
12:48:09
@playra source должен быть 'uri' или 'require()' source={require('/react-native/img/favicon.png')}source={{uri: 'https://facebook.github.io/react-native/docs/assets/favicon.png'}}

@iLonny проблема теперь его просмотреть, в андроиде могу просмотреть через дополнительные проги типа: Микрософф Ворд, ПДФ ридер ....

Illia
19.10.2018
12:57:30
@playra https://facebook.github.io/react-native/docs/image#source

Play
19.10.2018
12:59:12
@playra https://facebook.github.io/react-native/docs/image#source
в курсе))) Попробуте так: import iconRightPlus from '../../../images/filter.png' <Image source={iconRightPlus} style={{ width: 30, height: 30 }} /> Работает, но вопрос вообще в другом.

Как в чилдрен передать?

Illia
19.10.2018
13:01:51
@playra <Children iconRightPlus={iconRightPlus} />Выходит загвоздка в этом. Название атрибута идентично с параметром атрибута. И что это за чилдрен елемент?

Play
19.10.2018
13:02:28
> Название атрибута идентично с параметром атрибута. ?

Illia
19.10.2018
13:05:12
@playra ты бы сразу и начал бы с норм впороса... как в чилдрен передать

Play
19.10.2018
13:05:48
Передаю картинку в компонент, не одно и тоже?

Google
Illia
19.10.2018
13:13:27
@playra попробуй через this.props.iconRightPlus

Play
19.10.2018
13:55:48
Никита
19.10.2018
13:57:39
так и пробывал
а если логать значение там вообще есть? если рендерить не картинку а красный квадрат 30 на 30 есть что-то?

Vladislav
19.10.2018
14:48:29
Приветствую, подскажите как разместить вакансию на Reactnative разработку / 1 мес. ?

Alexsandr
19.10.2018
14:56:11
https://t.me/javascript_jobs

Alexandr
19.10.2018
16:29:25


Dmitry
19.10.2018
17:55:32
Простите меня. без попутал, флаттер поставился сам

Alexander
19.10.2018
18:34:55
Как подружить react-native-typescript-transformer и hot reload?

Gena
19.10.2018
18:54:22
у меня они вроде дружат... вот с mobx не всегда...

Dmitry
19.10.2018
19:08:33
@gblack9 Кстати, ты, как-то обмолвился, что у вас api на вебсокетах

я правильно понимаю, что речь об api запрос - ответ?

Gena
19.10.2018
19:14:52
я правильно понимаю, что речь об api запрос - ответ?
Не совсем, там независимо можно команды посылать, как client->server, так и server -> client... и уже поверх этой абстракции, можно послать команду с токеном на сервер, который этот токен назад пришлет (чтоб клиент смог понять, что это именно на такой-то его запрос ответ)

Play
19.10.2018
19:21:44
Dmitry
19.10.2018
19:25:14
Да, за real time приложениями будущее. Из клиентов пока Apollo лучший.
я часто от тебя слышу это название, но так никак и не доберусь посмотреть)

Если коротко, то у нас достаточно сложное корпоративное приложение. Представляет собой многоуровневую систему задач, есть корневые задачи, вложенные и конечные. В конечных задачах есть возможность вести обсуждения в чатах. При этом поступление нового сообщения в чат должно добавлять счетчик сообщения на его задачу и поднимать счетчики вверх по дереву. Изменение наборов свойств родительских задач пораждает измениня вниз по дереву и так далее. Ну еще и свои боты есть, которые динамически создают задачи и сообщения для определенных наборов участников задач и чатов. Я не говорю еще и о разделении прав, администраторах, наследовании при создаании задач и закрытии чатов и задач с пробросом вниз и вверх по дереву. Сейчас все это живет на http подобном api и лонгпуллинг подпиской, которая рассылает ивенты на устройства при тех или иных изменениях в данных. Делать все это мне было достаточно трудоемко. Сервер на python + MSSQL и Clickhouse для агрегации логов и уведомлений + генерация шифрованных токенов для защиты запросов. В итоге все это работает, но есть просадки с зависанием запросов на клиентах + лонгпуллинг может быть требователен к ресурсам ведь фактически приходится дергать Clickhouse раз в 100ms за новым данными. К сожалению, когда эту задачу ставили не дали подниматься вебсокеты, так как у нас прокси сервер достаточно старый и с ними работает плохо, но сейчас уже готовлю сервер для v2 и можно поиграть с сокетами...

Gena
19.10.2018
19:55:51
Если коротко, то у нас достаточно сложное корпоративное приложение. Представляет собой многоуровневую систему задач, есть корневые задачи, вложенные и конечные. В конечных задачах есть возможность вести обсуждения в чатах. При этом поступление нового сообщения в чат должно добавлять счетчик сообщения на его задачу и поднимать счетчики вверх по дереву. Изменение наборов свойств родительских задач пораждает измениня вниз по дереву и так далее. Ну еще и свои боты есть, которые динамически создают задачи и сообщения для определенных наборов участников задач и чатов. Я не говорю еще и о разделении прав, администраторах, наследовании при создаании задач и закрытии чатов и задач с пробросом вниз и вверх по дереву. Сейчас все это живет на http подобном api и лонгпуллинг подпиской, которая рассылает ивенты на устройства при тех или иных изменениях в данных. Делать все это мне было достаточно трудоемко. Сервер на python + MSSQL и Clickhouse для агрегации логов и уведомлений + генерация шифрованных токенов для защиты запросов. В итоге все это работает, но есть просадки с зависанием запросов на клиентах + лонгпуллинг может быть требователен к ресурсам ведь фактически приходится дергать Clickhouse раз в 100ms за новым данными. К сожалению, когда эту задачу ставили не дали подниматься вебсокеты, так как у нас прокси сервер достаточно старый и с ними работает плохо, но сейчас уже готовлю сервер для v2 и можно поиграть с сокетами...
Имхо, тут не только в сокетах дело... хотя я считаю, они должны быть неотемлемой частью такой системы (лонг поллинг это хак в любом случае). Тут, если самим делать, большая задача это определение протокола который: 1. позволяет закодировать все изменения данных 2. позволяет сделать это компактно И вторая большая задача это сервер... по опыту такие системы шустро работают, только если working set... те данные про которые сейчас нужно кому-то знать находятся в памяти и изменения по ним рассылаются во сессии всех клиентов которым нужно о них знать одновременно (или непосредственно после) укладки в бд )

Dmitry
19.10.2018
19:58:20
Имхо, тут не только в сокетах дело... хотя я считаю, они должны быть неотемлемой частью такой системы (лонг поллинг это хак в любом случае). Тут, если самим делать, большая задача это определение протокола который: 1. позволяет закодировать все изменения данных 2. позволяет сделать это компактно И вторая большая задача это сервер... по опыту такие системы шустро работают, только если working set... те данные про которые сейчас нужно кому-то знать находятся в памяти и изменения по ним рассылаются во сессии всех клиентов которым нужно о них знать одновременно (или непосредственно после) укладки в бд )
Да, но при обычном http-api ты не знаешь кому отправлять данные, потому что никто к тебе и не подключен.. Лонгпуллинг в этом случае позвляет мне отслеживать коннекты по подписке на события и отправлять данные только тем, кто онлайн из тех, кто должен получить данные, потому что остальные и так их получат, когда войдут в приложение обычными запросами

Google
Roman
19.10.2018
20:45:33
есть ли возможность слить папку из files.app к себе в локальные документы приложения?

Dmitry
19.10.2018
20:52:19
хотя может инфа устаревшая у меня

Что то я уже всю голову сломал. Есть у меня HOC компонент я могу в нем получить контекст Component котого он оборачивает?

Play
20.10.2018
07:39:06
23,5 часа качественого видео по этой теме

Play
20.10.2018
08:27:35
Спасибо
Там как раз по вашей теме чатов, так как у Prisma(Yoga) встроена, в том числе, автогенерация кода для подписок на веб-сокетах. https://www.prisma.io/blog/how-to-build-a-real-time-chat-with-graphql-subscriptions-and-apollo-d4004369b0d4/

стартер для чата https://github.com/alan345/naperg

Роман
20.10.2018
09:07:39
Добрый день. Кто нибудь знает есть ли у react-navigation метод который отрабатывает при смене экрана? раньше был onNavigationStateChange но сейчас при его реализации вылезает error. Можно конечно написать middlerware но мне это не подходит.

Роман
20.10.2018
09:19:09
https://reactnavigation.org/docs/en/navigation-prop.html#addlistener-subscribe-to-updates-to-navigation-lifecycle
это то что надо спасибо. я это не нашел из за тово что сидел в старой доке. Спасибо

Dmitry
20.10.2018
11:24:54
Там как раз по вашей теме чатов, так как у Prisma(Yoga) встроена, в том числе, автогенерация кода для подписок на веб-сокетах. https://www.prisma.io/blog/how-to-build-a-real-time-chat-with-graphql-subscriptions-and-apollo-d4004369b0d4/
Я посмотрю, но готовые решения таких больших частей не для нас. Слишком высокая частота внедрения нового функционала. Мне проще потратить время и написать свой механизм, но зато я смогу спокойно его масштабировать. Тем не менее, изучу, может что интересен будет

Прикрутил и gifted-chat для сообщений, в итоге почти целиком его переписал, потому что примитивный функционал

Play
20.10.2018
11:40:23
Я посмотрю, но готовые решения таких больших частей не для нас. Слишком высокая частота внедрения нового функционала. Мне проще потратить время и написать свой механизм, но зато я смогу спокойно его масштабировать. Тем не менее, изучу, может что интересен будет
Это понятно) Я вам больше про технологию. React Native же вы не переписываете?! Поэтому Prisma(Yoga) Apollo GraphQL, тоже переписывать не надо =) Понять и написать свое используя эти передовые инструменты.

morda
20.10.2018
11:45:59
Призма шляпа же)

https://github.com/hasura/graphql-engine

Вот хасуру берите)

Play
20.10.2018
11:47:19
Google
Play
20.10.2018
11:51:32
Холиварная тема, не для этого чата. Это как выбор редактора кода, кому что под конкретные задачи. Знаю хасуру индусы запилили, но лучше Prisma не встречал.

morda
20.10.2018
11:59:03
Ну чот не понравилась не помню уже. Как-то костыльно показалось все

Ну это еще как только появилась. Мож ее там переписали уже 10 раз

Play
20.10.2018
12:04:15
Ну это еще как только появилась. Мож ее там переписали уже 10 раз
Там каждый день улучшения. Они 6.000.000$ инвестиций получили на развитие.

Эта передовая шляпа не завелась на чистом ведре
там где завелся докер, заведется и Prisma

Denis
20.10.2018
12:05:25
там где завелся докер, заведется и Prisma
Под виндой нативный аполло для ведра не завелся

Потому что "иди форкай и фиксь баг в плагине"

Play
20.10.2018
12:09:01
Под виндой нативный аполло для ведра не завелся
Что-то не то делали) Столько курсов уже по этой теме и у всех ок. А Аполло победитель на React Native конференции.

https://react.amsterdam/awards.html

Denis
20.10.2018
12:09:46
У них ЯВНЫЙ баг в плагине для сборки, и вроде еще не пофиксили даже

Зато 6 лямов инвестиций же! Не барское это дело "баги править"

Страница 867 из 878