@reactnative_ru

Страница 695 из 878
Evansir
13.06.2018
15:20:37
Так в андроиде часто делают

Mikhail
13.06.2018
15:20:50
так а может хэдер не перехватывает события у флат листа (и я вообще не уверен что это можно)
Видео скину сейчас, где абсолютный хедер стоит перед флетлистом. Вроде все норм отрабатывает

Вот только на этом видео я пальцем водил не по флету, а по хедеру)))

Алексей
13.06.2018
15:21:59
ну так это не удивительно, по иерархии флэт же ниже

Google
Mikhail
13.06.2018
15:22:12
Когда скрол вниз, хеадер пропадает, когда вверх - появляется
Можно впринципе) Вот только это будет уже не комильфо)

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

Алексей
13.06.2018
15:24:11
ну вот стоит мне его поставить под флет, то он просто пропадает)) скрин выше кидал. Там зеленый прямоугольник показывает на то, что выбран флетлист
ну я понимаю, однако правильнее будет поставить ниже по иерархии. Я скидывал свой код, там ниже стоит. Есть еще например тот же react-navigation, там хэдер тоже ниже по иерархии

Mikhail
13.06.2018
15:25:18
Посмотрю тогда код. Спасибо за советы. Как обычно где-то косяк самый банальный. Буду искать

Mikhail
13.06.2018
15:26:17
Алексей
13.06.2018
15:26:25
нет
это хорошо)

Mikhail
13.06.2018
15:26:40
пробовал) он тогда не скролится

Konstantin
13.06.2018
16:07:29
С помощью AsyncStorage разве нельзя получать данные const data = await AsyncStorage.getItem('storage'); на разных экранах react-navigation?

Zae
13.06.2018
16:18:06
можно

Evansir
13.06.2018
17:21:29
Вот только если реалм не компилится - это единственный вариант

GrafMine
13.06.2018
17:24:06
Привет, ребят подскажите плз что из либ посоветуете юзать для того что бы прикрепить файл в частности фотку для отправки на сервер потом, и так же чтоб активировать камеру сфоткать и фотка отобразилась ввиде превью в рендере и так же чтоб отправить на сервер?

Google
Evansir
13.06.2018
18:05:46
Fetch + formData

И пикер сверху

Я противник лишних зависимостей

https://github.com/g6ling/React-Native-Tips/blob/master/How_to_upload_photo%2Cfile_in%20react-native/README.md

Вот все расписано

Nick
13.06.2018
19:13:50
Fetch + formData
А разве обычный fetch поддерживает signal для отмены загрузки? ?

Evansir
13.06.2018
19:14:32
XML который в статье по-моему поддерживает

Но не знаю, у меня не было задания отменить

b0rke5
14.06.2018
04:59:03
Подскажите, а как называется эта штука с инспектором вьюшек?)

b0rke5
14.06.2018
05:06:13
Toggle inspector
Спасибо!

Mikhail
14.06.2018
05:33:04
Никита
14.06.2018
05:38:37
по секрету - это не фишка экспо. Работает и в чистом rn

Mikhail
14.06.2018
06:09:23
по секрету - это не фишка экспо. Работает и в чистом rn
спорить не буду) я использую expo просто

Peter
14.06.2018
06:30:03
hey guys, у кого-нибудь были проблемы с испильзованием async/await в expo приложении? У меня как-бы просто не работает :/ хотя в .babelrc установлен пресет expo

я пытаюсь в цикле отправлять запрос и дожидаться окончания цикла прежде чем возвращать значение

Ruslan
14.06.2018
06:36:09
Всем привет, при сборке gradle выдает такое

The library com.google.android.gms:play-services-basement is being requested by various other libraries at [[11.0.4,11.0.4], [15.0.1,15.0.1]]

Как можно порешать данную проблему?

Google
Никита
14.06.2018
06:40:16
я пытаюсь в цикле отправлять запрос и дожидаться окончания цикла прежде чем возвращать значение
код можно? и что значит не работает - падает или не работает как ожидается?

The library com.google.android.gms:play-services-basement is being requested by various other libraries at [[11.0.4,11.0.4], [15.0.1,15.0.1]]
тут скорее всего кто-то из натива лучше поможет. У меня в android/build.gradle есть такой момент: def googlePlayServicesVersion = '11.8.0' allprojects { repositories { mavenLocal() jcenter() maven { url "https://jitpack.io" } maven { url 'https://maven.google.com' } maven { url "$rootDir/../node_modules/react-native/android" } } configurations.all { resolutionStrategy { force "com.google.firebase:firebase-messaging:$googlePlayServicesVersion" force "com.google.firebase:firebase-core:$googlePlayServicesVersion" force "com.google.android.gms:play-services-ads:$googlePlayServicesVersion" force "com.google.android.gms:play-services-base:$googlePlayServicesVersion" force "com.google.android.gms:play-services-maps:$googlePlayServicesVersion" force "com.google.android.gms:play-services-gcm:$googlePlayServicesVersion" force "com.google.android.gms:play-services-analytics:$googlePlayServicesVersion" force "com.google.android.gms:play-services-location:$googlePlayServicesVersion" force "com.google.android.gms:play-services-auth:$googlePlayServicesVersion" } } } я так понимаю для решения нужно что-то в этом роде. Фиксирует версии сервисов

Ruslan
14.06.2018
06:43:42
тут скорее всего кто-то из натива лучше поможет. У меня в android/build.gradle есть такой момент: def googlePlayServicesVersion = '11.8.0' allprojects { repositories { mavenLocal() jcenter() maven { url "https://jitpack.io" } maven { url 'https://maven.google.com' } maven { url "$rootDir/../node_modules/react-native/android" } } configurations.all { resolutionStrategy { force "com.google.firebase:firebase-messaging:$googlePlayServicesVersion" force "com.google.firebase:firebase-core:$googlePlayServicesVersion" force "com.google.android.gms:play-services-ads:$googlePlayServicesVersion" force "com.google.android.gms:play-services-base:$googlePlayServicesVersion" force "com.google.android.gms:play-services-maps:$googlePlayServicesVersion" force "com.google.android.gms:play-services-gcm:$googlePlayServicesVersion" force "com.google.android.gms:play-services-analytics:$googlePlayServicesVersion" force "com.google.android.gms:play-services-location:$googlePlayServicesVersion" force "com.google.android.gms:play-services-auth:$googlePlayServicesVersion" } } } я так понимаю для решения нужно что-то в этом роде. Фиксирует версии сервисов
я примерно понимаю, в чем проблема, но как ее решить не пойму, перекопал уже столько всякого compile 'com.google.android.gms:play-services-base:11.0.4' compile 'com.google.android.gms:play-services-basement:11.0.4' compile 'com.google.android.gms:play-services-maps:15.0.1'

возможно, проблема в либках выше

rose
14.06.2018
06:44:16
cli
Почему cli?

Никита
14.06.2018
06:46:50
Почему cli?
более гибкое решение. Экспо конечно проще значительно, но иногда может понадобиться примтивнейшее нативное решение и с экспо будут проблемы Здесь найдется масса сторонников экспо. Правильнее возможно будет попробовать и то и то и решить что лучше подходит

rose
14.06.2018
06:47:19
спасибо

Никита
14.06.2018
06:48:26
возможно, проблема в либках выше
попробуйте в android/build.gradle дописать что я выше предложил. Возможно поможет. Проблема думаю в том что зависимости используют разные версии сервисов. Решение выше должно зафиксировать версии

Ruslan
14.06.2018
06:49:21
спасибо
Хорошо, попробую, спасибо большое

Никита
14.06.2018
06:50:47
возможно понадобится еще что-то вроде force "com.google.android.gms:play-services-basement:$googlePlayServicesVersion"

Ruslan
14.06.2018
07:04:56
Никита
14.06.2018
07:05:33
android/build.gradle

не в app

Евгений
14.06.2018
07:16:06
спасибо
Я для себя решил, что пока буду делать MVP, буду в разных ветках держать проект на expo и на rn-cli. А уже потом решу что взять.

Никита
14.06.2018
07:20:54
чисто из интереса - зачем держать экспо версию если есть cli? из реальных плюсов экспо (помимо простоты) в чате видел только code push, потому что при обновлении гарантированно не появится нативной зависимости

Vlad
14.06.2018
08:28:25
чисто из интереса - зачем держать экспо версию если есть cli? из реальных плюсов экспо (помимо простоты) в чате видел только code push, потому что при обновлении гарантированно не появится нативной зависимости
+ в быстроте развёртования и готовых компонентах, первый плюс нормальный CI/CD перекрывает без проблем, а вот со вторым не поспоришь, но он реально хорош для прототипирования или MVP если готовы потом переписать

Ruslan
14.06.2018
08:30:01
android/build.gradle
Понял,спасибо!

Peter
14.06.2018
08:46:02
.then(async (response) => { let convertedEvents = []; let roomName; convertedEvents = await response.map((item, index, array) => { roomName = Room.findOne({ _id: item.roomId }).then((res) => { console.log(res, "GETTED ROOM"); return res.roomName; }).catch((err) => { next({ status: 403, message: err.message }); }); return { ...item, roomName } }); console.log(convertedEvents, 'converted'); })

подскажите почему сначала выводится последний console.log (converted) а уже потом тот что внутри map (GETTED ROOM) ? async/await правильно юзаю?

Vladimir
14.06.2018
08:53:15
у вас мешанина из промисов и async/await

Google
Vladimir
14.06.2018
08:53:23
советую для начала переписать в один стиль

Vlad
14.06.2018
08:54:00
подскажите почему сначала выводится последний console.log (converted) а уже потом тот что внутри map (GETTED ROOM) ? async/await правильно юзаю?
Согласен с прошлым и почитайте про коллстек вызовов и тогда должны понять что тут происходит, но код явно стоит обдумать

Peter
14.06.2018
08:54:41
спс ребят, буду думать

Vlad
14.06.2018
08:55:31
А вообще если вам рассказать вкратце почему так, вначале в коллстеке вызовов выполняются синхронные действия, а потом асихнхронные

morda
14.06.2018
09:02:43
response.map возвращает не промис а список, await'у ждать нечего, roomName = не рум нейм, а промис, тоже пролетит сразу в return, получится список с промисами вместо roomName

если пользуешься async/await семантикой, то каждый await необходимо в try/catch укладывать, так как оно только на позитивный исход рассчитано, ексепшоны проглатывает

morda
14.06.2018
09:17:07
ну вот это уже промис-синтакс

я бы рекомендовал async/await в тех местах где кэтчить не надо, есть данные работаем, нет - и хрен с ними

Алексей
14.06.2018
09:17:42
Гайз, давайте придерживатся тематики чата

morda
14.06.2018
09:22:33
это дев-мод, в продакшене у юзера только грустные глаза и желание разбить телефон есть)

Алексей
14.06.2018
09:22:34
вот вы флудеры

morda
14.06.2018
09:22:46
кофе-брейк)

Anton
14.06.2018
10:39:01
Ребята, кто сможет пройти авторизацию в этом проекте? https://github.com/letsdoitworld/World-Cleanup-Day не могу пройти ни через фейсбук ни через гугл в первом выдает user_friends ошибку во втором redirect_uri_mismatch (ошибка где то в переменных, и да я прошел по всему инету и пробовал разные подходы уже) Готов пиво прислать за решение!

Evansir
14.06.2018
10:45:37
The library com.google.android.gms:play-services-basement is being requested by various other libraries at [[11.0.4,11.0.4], [15.0.1,15.0.1]]
Никита правильно сказал, у тебя либы используют различные версии зависимости

Ruslan
14.06.2018
10:46:06
Evansir
14.06.2018
10:46:31
Теперь все ок?

Ruslan
14.06.2018
10:46:33
Только теперь другая проблема, начинает ругаться на папку в node_modules

на react-native maps, на java файл

Google
Evansir
14.06.2018
10:47:46
Потому что либа может использовать старые либы гугла

Там Гугл в последних версиях много что поменял

Ruslan
14.06.2018
10:48:35
Либы обновил implementation "com.google.android.gms:play-services-base:15.0.1" implementation "com.google.android.gms:play-services-maps:15.0.1"

Evansir
14.06.2018
10:48:45
По картам не скажу, но драйв вообще поменял апи

Ruslan
14.06.2018
10:48:57
блин)

Evansir
14.06.2018
10:48:57
Да либы обновил

Но какие использует зависимость?

Изначально

Ruslan
14.06.2018
10:49:37
Evansir
14.06.2018
10:49:56
Она может попросту не работать на 15

Там методы поменялись

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