@reactnative_ru

Страница 138 из 878
Vladimir
12.04.2017
17:12:34
В РН можно по разному реализовать между iOS/Android

Вообще за тем же, зачем и вообще идет разделение на компоненты

Murad
12.04.2017
17:13:03
если компонент чистый, то это дает тебе ряд предположений: - компонент ничего не меняет снаружи - компонент зависит только от своих пропсов (а значит легко отслеживаемый через дев-тулзы)

Vladimir
12.04.2017
17:13:06
логика скорее всего и так где-нить в редаксе

Google
Murad
12.04.2017
17:13:37
что в целом, дает тебе огромное преимущество "не думать" большим массивом компонентов

Vladimir
12.04.2017
17:13:41
Даже если упороться по редаксу, то все равно в компонентах своя логика

Анимации всякие, жесты и т д

Murad
12.04.2017
17:13:54
есть и ui логика, типа анимаций или промежуточных стейтов

Vladimir
12.04.2017
17:15:06
ну все равно приходим к тому, что стейт где-то есть, так?

Vladimir
12.04.2017
17:15:16
Естественно

Vladimir
12.04.2017
17:15:33
только вместо одного компонента - два или больше

Vladimir
12.04.2017
17:15:43
Так в этом ничего плохого

Vladimir
12.04.2017
17:15:53
ну и хорошего тоже

Murad
12.04.2017
17:15:54
да, но тк стейт это complex, то лучше его держать в минимизированном виде, не смешивая

Vladimir
12.04.2017
17:15:57
все ситуативно

Vladimir
12.04.2017
17:15:58
А то так можно и все приложение в одном классе написать

Vladimir
12.04.2017
17:16:08
вообще можно

Google
Murad
12.04.2017
17:16:15
да, зачем впринципе уходить от index.platform

во, ден переименовал даже их одно - для показа второе - для инкапсулирования изменяющейся логики https://medium.com/@dan_abramov/smart-and-dumb-components-7ca2f9a7c7d0

по сути, это фундаментальный подход "разделения на консьерны" просто с реакт спецификой

Vladimir
12.04.2017
17:20:08
Кстати, вполне можно делать и чистые компоненты с анимацией

Анимация при этом передается через пропсы

Murad
12.04.2017
17:20:51
тогда анимация находится в пэренте

Vladimir
12.04.2017
17:20:58
ага

И пэрент уже рулит

Murad
12.04.2017
17:21:16
тогда это чистый компонент, возвращающий дерево

анимационную манипуляцию уже реакт делает с деревом

Vladimir
12.04.2017
17:21:33
Да, он просто поддерживает опциональную анимацию

Murad
12.04.2017
17:21:44
компонент остается чистым, а стейт находится внутри Animate.Value

Vladimir
12.04.2017
17:21:50
Да

Vladimir
12.04.2017
18:10:32
ну в общем, просто надо помнить, что у этого есть цена, а профит от реиспользования не всегда удается получить

Igor
12.04.2017
18:20:22
REFGTNBDSH7

Алексей
12.04.2017
19:56:24
ну кстати stateless компоненты неплохо так защищают от использования хуков реакта, по опыту - если юзаются хуки, жди баги

Murad
12.04.2017
20:02:59
я бы уточнил - защищают от соблазна использовать хуки

Murad
12.04.2017
20:03:12
хуки усложняют, изза необходимости помнить "что за чем"

Google
Murad
12.04.2017
20:03:27
но основное усложнение в том что в них используют императивные вызовы

Vladimir
12.04.2017
20:03:33
Использование хуков неизбежно

В РН, по крайней мере

И рефов

Murad
12.04.2017
20:04:19
по разному если положить стейт в редюкс то большинство приложений легко делается без хуков

Vladimir
12.04.2017
20:04:20
И вызова императивных методов

Murad
12.04.2017
20:04:51
в целом, хуки часто используются, если изолированный библиотечный компонент

но мы его воспринимаем как "черный ящик" который должен работать

Vladimir
12.04.2017
20:05:07
Если приложение без анимаций - то может быть

Алексей
12.04.2017
20:05:23
Использование хуков неизбежно
смысл не в полном отказе, а в меньшем использовании) собсн-о как в фп, чем меньше сайд эффектов - тем лучше

Vladimir
12.04.2017
20:05:37
Ну эт само собой

Кирилл
13.04.2017
07:45:20
Всем доброе утро! Кто-нибудь пытался разобратсья зачем RN добавляет пермишны на Photos/Media/Files и Device ID & call information? Есть issue https://github.com/facebook/react-native/issues/5886 где это разбирают и пишут как убрать неиспользуемые разрешения (WRITE_EXTERNAL_STORAGE, READ_PHONE_STATE, READ_EXTERNAL_STORAGE). Но я так и не могу понять зачем они добавляются?

Alexander
13.04.2017
07:53:58
Видимо, чтобы из коробки их компоненты и api работали

Кирилл
13.04.2017
07:55:20
ну AsyncStorage их коробки a SQLite DB испольузет и не требует никаких прав

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

Andrey
13.04.2017
10:19:37
возник вопросик каверзный... как вообще реактнативе норм или не ?

чот глянул в гитхаб ... там версия 1000.0 https://i.imgur.com/b6ZYitT.png так делают или когда забили .... ну или у них отдельно версия вешается перед паблишем в нпм

планирую попробовать. Подскажите вообще проблемная тема ?

функционал у меня не сложнее чем обычный сайтик. не придётся часть функционала допиливать на какомнить обжективе-си или свифте ?

Google
Алексей
13.04.2017
10:24:02
или просто не стали чтобы у себя ниче не ломать

Ostap
13.04.2017
10:48:13
Всем привет. Кто нибудь заводил full screen video на андроиде с помощю https://github.com/react-native-community/react-native-video ?

Ostap
13.04.2017
11:00:28
вопрос: как ? есть <Video ref={ref => this.video = ref} source={{ uri: this.props.source.src }} style={styles.fullScreen} rate={this.state.rate} paused={this.state.paused} volume={this.state.volume} muted={this.state.muted} resizeMode={this.state.resizeMode} onLoad={this.onLoad} onProgress={this.onProgress} onEnd={this.onEnd} onAudioBecomingNoisy={this.onAudioBecomingNoisy} onAudioFocusChanged={this.onAudioFocusChanged} repeat={false} />

и есть this.video.presentFullscreenPlayer();

но оно не пашет

Кирилл
13.04.2017
11:11:46
что не пашет? делаешь position: 'absolute', top: 0, left: 0, bottom: 0, right: 0

Ostap
13.04.2017
11:12:45
ну на iOS там нативный видео плеер открывается

и еще вопрос, я с дуру сделал → react-native-git-upgrade 0.43.3 теперь не могу откатиться

Кирилл
13.04.2017
11:13:46
гит наше все

Ostap
13.04.2017
11:14:12
ех

Кирилл
13.04.2017
11:14:55
Ostap
13.04.2017
11:15:16
так я ж наоборот хочу вызывать

Кирилл
13.04.2017
11:16:02
фулскрин видео нужно на бэкграунде или при нажатии чтоб плеер открылся??

Ostap
13.04.2017
11:16:21
когда тапаю - фулскрин и autoplay

Кирилл
13.04.2017
11:44:29
когда тапаю - фулскрин и autoplay
а... я про бэкграунд подумал. Ну можно показывать модалку с этим видео

Ostap
13.04.2017
11:44:44
:(

https://github.com/react-native-community/react-native-video/issues/392

Кирилл
13.04.2017
11:46:04
да... дела

Google
Алексей
13.04.2017
11:46:36
:(
вот вообще неправильная реакция, такой шанс запилить плеер на андроид и помочь сообществу! ?

Кирилл
13.04.2017
11:50:09
еще в RN нормального компонента селекта не видел

Алексей
13.04.2017
11:51:40
я не Java dev :)
да ладно тебе, SO и все сделаешь) я тоже не Java дев, но иногда если нужно пишу нативный модуль)

Alexander
13.04.2017
13:19:02
+1, это совсем несложно

Roman
13.04.2017
13:48:04


Как решить эту проблему, вроде все пишут что react/react-dom версии должны совпадать, ну зделал, а ничего не изменилось, на другом компе тоже также, я уже второй день маюсь) измотался

Fire
13.04.2017
13:50:43
Там по пунктам расписано - не помогло?

Roman
13.04.2017
13:50:48
нет

Dmitry ?
13.04.2017
13:50:56
Сегодня такое было

Roman
13.04.2017
13:51:11
уже и $TMPDIR/react* сносил и ios/build

Dmitry ?
13.04.2017
13:51:16
Попробуй удалить ^ у react-native и react зависимостей

Roman
13.04.2017
13:51:17
и репозиторию заново

ок

Dmitry ?
13.04.2017
13:51:27
Какие там версии стоят у тебя?

Roman
13.04.2017
13:51:43
- "react": "^16.0.0-alpha.6", - "react-dom": "^16.0.0-alpha.6",

15.4.0 тоже пробывал

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