Vitaly
можно cloneDeep еще, из lodash
Serge
не
А как? Два цикла? Это можно оптимизировать при помощи Set.
Serge
O(n^2) -- некруто.
Eugene
А как? Два цикла? Это можно оптимизировать при помощи Set.
беру item делаю state.findIndex(prevItem => prevItem.date === item.date) если есть - обновляю, если нет - добавляю Хм, надо глянуть Set 🤔
Anonymous
Товарищи, как лучше хранить форматированные статьи в количестве 700 штук? Форматирование - значит это Text внутри Text. Значит просто в строке не выйдет, ибо потом парсить это всё... Хранить сразу компонентами все 700 статей?
Насколько понимаю, самый оптимальный вариант - хранить в строках, оставив метки для форматирования, а при открытии страницы - по этим меткам строить компонент с форматированием?
Andrey
const updatedState = new Set([...prevState, ...newState])
Andrey
а?
Andrey
не представляю как замиксуется)
Олег
всем привет, подскажите пожалуйста дураку. есть facebookLogin = async () ассинхронная функция, где после авторизации я делаю this.props.navigation.Navigate, но this в ней в другой области видимости как вызвать перенаправление?
Aynur
код пожалуйста
Олег
https://pastie.ru/view/943016e0
Aynur
export default withNavigation(FacebookButton);
Aynur
withNavigation импортируете из react-navigation
Олег
большое спасибо
Олег
долго бы я это искал)
Aynur
я сам до этого несколько месяцев через props передавал navigation, пока тут не сказали. Эх... доки надо внимательнее читать(
Pavel
Всем привет! Буду благодарен за / против использования и организации хуков в RN как своих, так и сообщества - https://github.com/react-native-community/react-native-hooks ? Пишу с нуля, большая часть функциональные компоненты без классов, хотел попробовать описать работу с API (GraphQL) и девайсов с помощью хуков.
Шерзод
Кто-нибудь работал с react-native-render-html или с WordPress REST API?
Andrei
Друзья, кто-нибудь работал с GetStream.io? Подскажите, пожалуйста, где хранить все секреты?
Sherzod
Кто-нибудь работал с react-native-render-html или с WordPress REST API?
Мне приходилось работать с react-native-render-html? В чем проблема?
Шерзод
пробовал этим ul: (htmlAttribs, children, convertedCSSStyles, passProps) => { return ( <Text style={{ color: 'blue', fontSize: 16 }}>+</Text> ); } в документации вроде написано что стандартный круглешок должен замениться на крестик, но ничего не меняется
Vadim
Мб кто-то подружил https://github.com/lucasferreira/react-native-flash-message с RNN? Выводится ниже топбара
Anonymous
https://ain.ua/event/ua-mobile-2019/ кто там будет?
Avent
Всем привет, я веб разработчик. Умею немного vue + laravel. Сейчас хочу немного скиллов ухватить в мобильной разработке, что мне выбрать: ReactNative или NativeScript и почему?
Avent
@x_y_z_p_o_p клиенты часто интересуются, делаю ли приложения
Avent
говорю что нет
Avent
потому что так и есть
Avent
вот в свободное время хочу поиграть с этой темой
Avent
чтобы говорить "да делаю, давайте делать"
Dmitry
чтобы говорить "да делаю, давайте делать"
тогда говори, что делаешь и вперед изучать на боевом проекте)
Eugene
Expo и вперёд
Eugene
я что-то не то сказал?)
Dmitry
я что-то не то сказал?)
экспо от лукавого
Dmitry
все впечатление испортит от разработки)
Avent
где я вам экспо по reactnative найду?
Avent
тпфу
Avent
это оказывается название фреймворка
Eugene
да
Avent
я думал типа "ReactNative Expo 2018"
Eugene
для быстрой разработки
Avent
типа сгонять на конференцию - послушать и определиться
Dmitry
типа сгонять на конференцию - послушать и определиться
ну тоже вариант, только у нас я еще не встречал таковых
Eugene
да они запарили
Никита
У меня вот так: https://gist.github.com/vovkasm/f10e1f1c24e355ab242aabc98ba07fe0 Идея в том, что мы кладем <KeyboardDismisser> в верху иерархии чтоб он занимал весь экран. Дальше он работает как скрывалка клавиатуры. Большая часть кода там - это отрефакторенный TouchableWithoutFeedback с заменой на нужное поведение (как у ScrollView относительно клавиатуры). Хак там два раза в комментариях отмечен, это то место, которое RN не экспортирует нормально, но ScrollView им пользуется для правильного детекта элемента с фокусом )
откладывал себе на почитать в свободное время, только руки дошли. Чисто по коду интересны 2 вещи (если не обращать внимание на хаки) 1. const isTouchWithinActive = x > viewX - 20 && y > viewY - 20 && x < viewX + viewW + 20 && y < viewY + viewH + 20 почему 20? 2. есть ли какой то смысл у таких проверок перед присваиванием? if (this.touchState !== nextState) this.touchState = nextState p.s. спасибо за проделанную работу
Dmitry
а мне понравилось // TODO(vovkasm): fix this shit
Dmitry
=)
Никита
и еще вопрос (возникает только из-за моей лени, поэтому если он проигнорируется будет вероятно даже лучше - посмотрю сам) используется blurTextInput с передачей туда компонента который блюрить надо. Это не то же самое что input.blur() ?
Gena
откладывал себе на почитать в свободное время, только руки дошли. Чисто по коду интересны 2 вещи (если не обращать внимание на хаки) 1. const isTouchWithinActive = x > viewX - 20 && y > viewY - 20 && x < viewX + viewW + 20 && y < viewY + viewH + 20 почему 20? 2. есть ли какой то смысл у таких проверок перед присваиванием? if (this.touchState !== nextState) this.touchState = nextState p.s. спасибо за проделанную работу
1. Это конечно в константе (или даже конфигурируемо через props должно быть), но было для простоты оставленно в дефолтном значении - это расширение области детекта тача, т.к. невозможно сделать тач в точку, это всегда область. Эта конкретно константа вот отсюда: https://github.com/facebook/react-native/blob/0.59-stable/Libraries/Components/Touchable/Touchable.js#L294 2. Нет, это одна штука там... надо пофиксить ))) После рефакторинга какой-то подобной хрени осталось: https://github.com/facebook/react-native/blob/0.59-stable/Libraries/Components/Touchable/Touchable.js#L770
Никита
Просто там много подобных проверок перед присваиванием
Gena
а мне понравилось // TODO(vovkasm): fix this shit
Это мои тудушки, на будущее ^_^
Никита
Спасибо за ответ
Gena
Просто там много подобных проверок перед присваиванием
Такая - одна ) Её можно смело удалять. Я оставляю такие проверки только если они позволяют избежать какой-либо доп работы... а там просто скалярное значение в проперти... совершенно спокойно можно всегда присваивать. Сеттера там никогда не будет тоже (надеюсь)
Gena
Дело в том, что currentlyFocusedField возвращает не инстанс компонента (если мне память не изменяет)
Никита
private onResponderTerminate = (e: GestureResponderEvent) => {     if (this.touchState === States.NOT_RESPONDER) return     this.touchState = States.NOT_RESPONDER   } вроде +- то же самое
Gena
А... может быть )
Gena
Надо будет туда заглянуть и упростить )
Gena
По поводу фокуса... вот это советую посмотреть... там можно много интересного нарыть: https://github.com/facebook/react-native/blob/0.59-stable/Libraries/Components/TextInput/TextInputState.js#L37
Gena
Кстати, спасибо за ревью! )
Gena
Проапдейтил гист 😉
Burado
Эт тип намёк на то, что без водки и наркоты выучить js никак?
Burado
Пик Балмера никто не отменял.
Загуглил, орнул. У меня был случай, когда я выпил и вшарил нейросети на golang, но воспринял это как совпадение.
Genius
Коллеги, кто на апстор выкладывал приложение с платежной системой не апл пей, а другого провайдера, вроде epay, wooppay или paybox? Эпл пишут, что нельзя таких выкладывать и лучше использовать их платежную систему с 30% откатом. Но в апсторе есть приложения со сторонней оплатой
Genius
Через Apple pay не 30% откат. 30% за встроенные покупки.
Да. А мне не хотелось бы 30% отваливать
Vadim
Да. А мне не хотелось бы 30% отваливать
Так у вас встроенные покупки?
Genius
Через WebView я уже подключил другой сервис
Vadim
да
Короче, я немного занимался вопросом и что я понял. Если это встроенная покупка в игре (например), то эпл забирает 30% и ничего с этим не сделаешь. Если же приложение выступает просто инструментом (а не самим продуктом), то можно использовать что-то свое. Так делает любое банковское приложение или airbnb, например.
Vadim
Могу ошибаться, разумеется.
Genius
У меня приложение по продажам прогнозов на спорт. Если вы правы тогда можно получается да?