@reactnative_ru

Страница 862 из 878
morda
16.10.2018
09:22:39
энтузиастов?))

Dmitry
16.10.2018
09:23:31
энтузиастов?))
ну а как еще назвать?)

Ksetrin
16.10.2018
09:23:55
Я в принципе считаю, что Vue - подделка энтузиастов на волне популяризации фреймворков =)
ну зря, на самом деле, вуй хороший фреймворк, я до реакта на нем писал где-то полтора года. Он лаконичный и по-своему реактивный, вообщем у меня очень хорошие впечатления. Кроме того, с ним получается очень хорошая архитектура (я не говорю, что на реактах плохая). Что касается вуй-нэтив, это совсем отдельная тема

morda
16.10.2018
09:25:26
>Another impressive international adopter of Vue.js is Alibaba, a public company from China

Google
morda
16.10.2018
09:25:31
такие себе энтузиасты)

Ksetrin
16.10.2018
09:26:42
Алибаба уже позже подтянулись вроде как

Dmitry
16.10.2018
09:26:57
Но их не было изначальное

ПРосто сейчас, все компании (около IT-шные) стараются урвать кусок

Ksetrin
16.10.2018
09:27:50
это называется "инвестировать"))

Dmitry
16.10.2018
09:27:55
Потому что неизвестно, что выстрелит)

morda
16.10.2018
09:29:24
не ну изначальный вью был криком уставшего от первого ангуляра человека)

Ivan
16.10.2018
09:29:46
vue native ведь на react native завязан

morda
16.10.2018
09:29:53
сейчас это такая же монстрина как реакт с хорошим саппортом от крупных игроков)

Ksetrin
16.10.2018
09:30:10
vue native ведь на react native завязан
это просто трансформатор, транфорсормер или как его там

ну им было лень писать обертку на натив, как сделали фейсбуки, и они запилили обертку над реакт нэтив

Dmitry
16.10.2018
09:32:19
сейчас это такая же монстрина как реакт с хорошим саппортом от крупных игроков)
Смотря, что понимать под "хорошим саппортом от крупных игроков"

Google
morda
16.10.2018
09:35:04
ну например предполагаю что там таких разворотов как в реакт-навигейшн не будет)

т.е. кодобаза в сторону говна не поедет, не дадут (надеюсь)

ну и эван там с патреона на фултайм пашет) тоже плюс) считай на зарплате)

Dmitry
16.10.2018
09:38:01
ну на то это и опенсоурс

morda
16.10.2018
09:38:05
ну там много было

сперва они заявили что им фло мешает и выпилили, потом заявили что редакс мешает и выпилили

и так по мелочи

Vladimir
16.10.2018
09:40:12
о, так потихоньку и в нормальный продукт превратится%)

morda
16.10.2018
09:49:49
чет сомневаюсь)

вот за этими следить надо) https://github.com/callstackincubator/rebolt-navigation

Arsenii
16.10.2018
10:03:43
Привет! Кто-то использует Яндекс карты в приложении? я нашел https://github.com/doomsower/react-native-yandexmapkit но с ним пока не получается запустить, и вижу что там версия 2 используется, а сейчас уже 3 в документации у яндекса

Ivan
16.10.2018
10:04:21
они их забросили

Demuz
16.10.2018
10:17:20




Tinder не на реакте часом? ?

Где image при первом рендере? ?

Aynur
16.10.2018
10:18:36
это баг на андроиде при circle image

ну по опыту :D

Alexander
16.10.2018
10:54:04
Почему this.props.navigation.navigate бывает отрабатывает не сразу, а с задержкой?

Google
Aynur
16.10.2018
10:55:48
а версия последняя?

Alexander
16.10.2018
10:57:12
Aynur
16.10.2018
10:57:37
2.18.0 сейчас крайняя

вроде это фиксили всё

Arsenii
16.10.2018
11:10:54
:( варинт только для 3 делать обертку ?

Ivan
16.10.2018
11:11:59
а чем гугл/мапбокс не нравится?

Arsenii
16.10.2018
11:12:30
мне нравится, но хотят яндекс

Alexander
16.10.2018
11:20:30
2.18.0 сейчас крайняя
Спасибо. Проблема решилась

Berik
16.10.2018
12:17:06
а чем плох лайтбокс?

что с ним то не так

Миша
16.10.2018
12:25:50
а чем плох лайтбокс?
Криво сворачивается из-за изменения размеров

Berik
16.10.2018
12:26:52
а естть такое, а просто заанимировать впрямую пробовали?

Миша
16.10.2018
12:28:53
Нам нужно ещё закрытие по свайпу и решили пока не писать костыль, а поискать решение

Aynur
16.10.2018
12:40:33
<Modal isVisible={true} onSwipe={() => { goBack(); }} onBackButtonPress={() => goBack()} swipeDirection={swipeDirection} style={{ margin: 0 }}> <PhotoView source={{ uri: url }} minimumZoomScale={1} maximumZoomScale={3} onScale={e => { console.log(e.nativeEvent.scale); this.setState({ zoom: e.nativeEvent.scale }) }} onLoad={() => console.log("Image loaded!")} style={{ width: win.width, height: win.height }} /> </Modal> Использовал в связке с react-native-photo-view - всё хорошо работало)

if (this.state.zoom <= 1.1) { swipeDirection = 'down' } небольшой костыль на будущее, если не хотите, чтобы реагировало при зуме и перемещении по картинке пальцем

Chu
16.10.2018
13:02:04
Всем доброго дня! По экспо вопрос. А можно как-то в коде узнать, что сейчас идёт запуск именно через экспо-клиент, а не через выложенное приложение?

Expo.Constants.appOwnership это оно?

Миша
16.10.2018
13:29:47
Google
Alexander
16.10.2018
14:18:17
Expo.Constants.appOwnership это оно?
Если нужно понять что приложение запущено не через Expo, то у него будет appOwnership === standalone

если нужно понять что запущено с эмулятора или поставлено на телефон(открыто через expo client), то isDevice

Dmitry
16.10.2018
14:56:19
Допустим у меня есть экран у которого в componentDidMount дергает запрос через axios. Пушим этот экран и, не дожидаясь ответа, пОпим. Вопрос, убьется ли запрос или продолжит висеть?

Ivan
16.10.2018
15:10:35
Чтоб он убился - его надо отменить

Dmitry
16.10.2018
15:16:12
Чтоб он убился - его надо отменить
Тогда получается, что нужно следить за всеми запросами на экранах....

Ivan
16.10.2018
15:18:28
У нас это дело в редаксе происходит, в стейтах статусы загрузки, ошибки и остальные данные

morda
16.10.2018
15:20:44
@gblack9 у тебя ругани на циклические импорты много было после переезда на 0.57?) "Require cycles are allowed, but can result in uninitialized values. Consider refactoring to remove the need for a cycle."

Steve
16.10.2018
15:22:44
есть тут психопаты что воткнули litho/AsyncDisplayKit в реакт нейтив? Или может быть кто-то делал кастомный нативный лейаут?

Gena
16.10.2018
15:25:01
Допустим у меня есть экран у которого в componentDidMount дергает запрос через axios. Пушим этот экран и, не дожидаясь ответа, пОпим. Вопрос, убьется ли запрос или продолжит висеть?
Будет висеть... радости добавляет ещё и то, что отменить запрос практически невозможно... (вот такое в mdn: https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API#Aborting_a_fetch) И хотя это умеет XMLHttpRequest (не знаю может ли его эмуляция в RN), обычно он завернут в API на промисах, которые в стандартном виде тоже отменить нельзя ))) Мы в итоге когда это важно игнорируем ответ (упрощенная схема): function doRequest() { let cancelled = false somethingThatDoRequest().then((res) => { if (cancelled) return Promise.resolve() }).then((...) => { if (cancelled) return Promise.resolve() // и везде (альтернатива рвать цепочку через throw new Error() ... }) return () => { cancelled = true } }

Но в RN 0.57.3 они перестали вызывать YellowBox...

morda
16.10.2018
15:27:05
не, вот 57.3 всё на месте

сентри да и фетч из рн

Gena
16.10.2018
15:27:38
хм... странно, а у меня нет... только в консоли их видно

morda
16.10.2018
15:28:07
а ну да

в консоли

Gena
16.10.2018
15:30:02
А, да... есть fetch ))) node_modules/react-native/Libraries/Network/fetch.js -> node_modules/react-native/Libraries/vendor/core/whatwg-fetch.js -> node_modules/react-native/Libraries/Network/fetch.js

Gena
16.10.2018
15:30:58
axios умует в cancel на уровне XMLHttpRequest
О! Спасибо, буду иметь ввиду, если где-то с HTTP API придется работать!

Stas
16.10.2018
15:31:41
то, что у вас, скорее response ignoring, а не отмета request-а

Google
Stas
16.10.2018
15:32:13
а точно, сорьки)

Gena
16.10.2018
15:33:24
У нас это вообще в других конекстах возникает на самом деле, и т.к. апи через WebSockets, то рвать соединение нам не надо

Stas
16.10.2018
15:35:35
про аксиос: https://github.com/axios/axios/blob/master/lib/adapters/xhr.js#L160 еще rxjs ajax сам абордит реквест при отписке от observable (что типично для reactivex): https://github.com/Reactive-Extensions/RxJS-DOM/blob/master/src/ajax/ajax.js#L177

кажется в ciclejs HTTP driver тоже так делает

morda
16.10.2018
15:39:06
про аксиос: https://github.com/axios/axios/blob/master/lib/adapters/xhr.js#L160 еще rxjs ajax сам абордит реквест при отписке от observable (что типично для reactivex): https://github.com/Reactive-Extensions/RxJS-DOM/blob/master/src/ajax/ajax.js#L177
а вот эпичный эпик который будет долбиться в апи каждые N секунд пока его не удовлетворят)) https://gist.github.com/mordaha/2c5776f0c8ccd59ebd7c8c9e74c500b5

Stas
16.10.2018
15:39:53
они либо должны пулять экшены: "о, я активный", "блин, я ухожу", либо middleware должна иметь доступ к состянию навигации

потому-что сложность управления этим возрастает, особенно если запросов много и они один за другим идут. в этом случае rxjs так и просится

а вот эпичный эпик который будет долбиться в апи каждые N секунд пока его не удовлетворят)) https://gist.github.com/mordaha/2c5776f0c8ccd59ebd7c8c9e74c500b5
можно .takeUntil(action$.ofType('FETCH_EPIC')) поменять на switchMap вместо mergeMap. Вот в этом примере, когда происходит CANCEL_EPIC, запрос отменяется. CANCEL_EPIC может кидать сам экран, а еще этот эпик может подписываться на навигацию, и сам решать, но это дело вкуса.

morda
16.10.2018
15:49:17
ну я скорее к тому как это легко и элегантно на рхжс делается) для эксперимента можно попробовать тоже самое на промизах в санке или на сагах запилить чтобы понять какой гемор)

Stas
16.10.2018
15:50:22
morda
16.10.2018
15:50:30
угу)

Stas
16.10.2018
15:56:33
еще nightmare для отмены запросов на промисах- отмена запроса одного экрана из нескольких источников. Тогда нужно пробрасывать cancel token куда-то выше экрана, где запрос был сделан.

Andrew
16.10.2018
16:39:00
Если зависимость уже была добавлена в проект через pods, например, pod 'react-native-splash-screen', :path => '../node_modules/react-native-splash-screen’, тогда ее не надо линковать через xcodeproj и Build Phases? Также и обратное?

Gena
16.10.2018
17:00:35
Если зависимость уже была добавлена в проект через pods, например, pod 'react-native-splash-screen', :path => '../node_modules/react-native-splash-screen’, тогда ее не надо линковать через xcodeproj и Build Phases? Также и обратное?
Если я правильно понял вопрос то да, более того двойной линкинг чреват core dump'ами. Если зависимость была установлена через cocoapods, то она слинкована через проект Pods (это такой гейтвейный проект через который cocoapods линкуют все зависимости) соответственно прямых упоминаний этой зависимости в основном проекте не должно быть.

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