Alex
Просто спеки читать?
Volodymyr
В любом случае лучше чем документация, ничего не будет.
Volodymyr
Любые видеоуроки так или иначе сводятся к доке.
Alex
понял спасибо
Eugene
Товарищи, react-navigation tab bar
в нем есть иконки, и иногда нажимаю на одну, открывается другая...куда копать ?
Eugene
https://github.com/react-navigation/react-navigation/issues/5007 🤔
Anton
Всем привет!
Подскажите пожалуйста вот по какому вопросу: Делаю offline прилагу. Ввиду требований необзодимо работать с sql запросами. Мой выбор пал на react-native-sqlite-storage.
Без проблем все настроил, подключил и решил, что напишу модуль, который, будет работать с SQL запросами и возвращать мне результат (не важно какого запроса). Написал вотчер саги (юзаю redux-saga)для определенных типов экшенов для всех типов запросов. Получись что-то вроде https://paste.ubuntu.com/p/NNCjTxzdRB/
Т.е я в саге достаю инстанс базы и делаю
const data = yield call(QueryService, { db, query}) и не получаю вообще ничего...
Более того, .then невозможен т,к мне executeSql возвращает undefined
Если делать через callback https://paste.ubuntu.com/p/SKbQzDFNbP/
То console.log('results', results), безусловно, выведет данные, вот только обратно в сагу я их не прокину...
Если кто-нибудь работал с react-native-sqlite-storage подскажите пожалуйста, как вы решали проблемы или посоветуйте альтернативу для работы с SQLite
Gena
Всем привет!
Подскажите пожалуйста вот по какому вопросу: Делаю offline прилагу. Ввиду требований необзодимо работать с sql запросами. Мой выбор пал на react-native-sqlite-storage.
Без проблем все настроил, подключил и решил, что напишу модуль, который, будет работать с SQL запросами и возвращать мне результат (не важно какого запроса). Написал вотчер саги (юзаю redux-saga)для определенных типов экшенов для всех типов запросов. Получись что-то вроде https://paste.ubuntu.com/p/NNCjTxzdRB/
Т.е я в саге достаю инстанс базы и делаю
const data = yield call(QueryService, { db, query}) и не получаю вообще ничего...
Более того, .then невозможен т,к мне executeSql возвращает undefined
Если делать через callback https://paste.ubuntu.com/p/SKbQzDFNbP/
То console.log('results', results), безусловно, выведет данные, вот только обратно в сагу я их не прокину...
Если кто-нибудь работал с react-native-sqlite-storage подскажите пожалуйста, как вы решали проблемы или посоветуйте альтернативу для работы с SQLite
Я бы скорее посоветовал выкинуть redux и использовать mobx... кол-во кода уменьшится, а структура может улучшится (но это уже от программиста зависит), а sqlite и его интерфейс тут ни при чем похоже...
Но это так, мысли вслух, тут каждый сам решает
Gena
Кстати (посмотрел в сниппеты)... а вы знаете, что коллбэчный интерфейс элементарно транслируется в промисы и наоборот?
Anton
Anton
спасибо
Gena
👍
Gena
Я посмотрел, как это устроено внутри ScrollView (потому что он внутри себя умеет это делать) и понял что всё мега-сложно )))
Второй попыткой было такое. Я завернул всё не в TouchableWithoutFeedback, а в обычный View, которому повесил хендлер на onTouchEnd, который скрывал клавиатуру, если текущий таргет не был TextInput'ом (@savelichalex, пока вспомнил, это ещё одно место, где убивается возможность кастомных текст-инпутов, они там держат реестр всех собственных TextInput элементов и TextInput регистрируется там при маунте, что позволяет им отслеживать по event.target является ли target полем ввода текста).
И это работает... ну почти... потому что делает немножко не то. На самом деле надо скрывать клавиатуру, не по окончании тача вне TextInput, а по окончании тача, если этот тач не был обработан кем-то... вот и пытаюсь сейчас понять возможно ли и как получить эту информацию
Кажется порешал проблему (и да, для того чтоб понять, пришлось переписать и немного упростить Touchable.Mixin и TouchableWithoutFeedback, вот может теперь из этого сделать не миксин, а что-то типа PanResponder и в PR... т.к. это бы решило проблему конвертации Touchable в нормальный класс)
Короче, вся соль здесь: https://github.com/facebook/react-native/blob/0.58-stable/Libraries/Components/Touchable/Touchable.js#L379 в методе, который висит на onStartShouldSetResponder и возвращает true, если компонент "хочет" стать ответственным за тач.
Вот если вот этот https://github.com/facebook/react-native/blob/0.58-stable/Libraries/Components/ScrollResponder.js#L174-L181 кусок кода из ScrollResponder перенести в тот метод, то всё начинает работать как надо.
Т.е. вся соль в том, что компонент становится responder'ом только если клавиатура поднята, при этом внутренний скролл (если он есть) не ломается, т.к. отнимает у него право отвечать за тач в onMoveShouldSetResponder
При такой схеме, можно действительно положить такой View на весь экран и он будет скрывать клавиатуру по тапу в пустое место, при этом внутренним ScrollView тоже надо выставлять опции для скрытия клавиатуры, т.к. они будут этим заниматься в своей области. В целом получается схема, которая с моей точки зрения более похожа на правильную.
Gena
неправильным остается только необходимость лазить в приватный TextInputState
Dr
Привет. Может кто работал в react-native-webrtc? как задизейблить удаленный стрим?
Volodymyr
Кто-то работал с react-native-router-flux ?
По какой причине при переходе с екрана на екран, компоненты не открепляются, тоесть когда с екрана перешли на другой, потом вернулись на него опять то componentDidMount не вызвался ? Как побороть такое поведение ?
不退転」
Volodymyr
Volodymyr
Volodymyr
Но тогда как мне проверить на момент отображения екрана, можно ли его видеть юзеру или нет
Gena
Обычно системы навигации для таких вещей предлагают собственные события или расширяют набор lifecycle методов реакта (что на самом деле более стремно, т.к. может сломаться с очередной версией)
Volodymyr
у роутера есть onChangeState и тд
Volodymyr
но по какой-то причне внутри него Actions.currentScene возвращает undefind ..
Volodymyr
Есть и у Сцен свой onEnter, on и тд, но они отрабатывают 1 раз
Gena
Вот, значит на этот onChangeState и надо повеситься и трекать изменение текущего экрана и дальше как-то передавать эту информацию в нужные компоненты... как точно это сделать, тут я помочь не смогу, не пользуюсь этой библиотекой.
Volodymyr
Парадокс в том что onStateChange тоже выполняется 1 раз ))
Volodymyr
Volodymyr
спасибо
Volodymyr
а каким роутером пользуетесь вы?
Gena
Никаким (самопальным)... ) Если что, рекомендую react-native-navigation
Σуатск 👦 ягодная 🍒 свежесть ✨ для мытья конф 👪 Без ГМО
Σуатск 👦 ягодная 🍒 свежесть ✨ для мытья конф 👪 Без ГМО
Σуатск 👦 ягодная 🍒 свежесть ✨ для мытья конф 👪 Без ГМО
Σуатск 👦 ягодная 🍒 свежесть ✨ для мытья конф 👪 Без ГМО
Σуатск 👦 ягодная 🍒 свежесть ✨ для мытья конф 👪 Без ГМО
Σуатск 👦 ягодная 🍒 свежесть ✨ для мытья конф 👪 Без ГМО
Господа пацаны, а почему при нажатии на лайк у меня тупа весь стор обнуляется?
Σуатск 👦 ягодная 🍒 свежесть ✨ для мытья конф 👪 Без ГМО
там уже пофиксил, вместо item.id поставил индекс в массиве
Σуатск 👦 ягодная 🍒 свежесть ✨ для мытья конф 👪 Без ГМО
но ситуация не изменилась
Σуатск 👦 ягодная 🍒 свежесть ✨ для мытья конф 👪 Без ГМО
Σуатск 👦 ягодная 🍒 свежесть ✨ для мытья конф 👪 Без ГМО
ладно, проблему нашел, не возвращал остальной стейт, однако как теперь добавить лайк к конкретному посту?
Максим
всем доброго временни суток. Не подскажете, есть ли тут специальсты по RNN v2? Или вопрос не сюда?
Максим
Собственно проблема в topBar background component на iphone X (и других с ресничкой). Этот background не растягивается на весь навбар. В то время как цвет заливает весь навбар. Жедтый - это заливка, синий - ,ackground component
Максим
Nick
Максим
не, да и цвет навбара (желтый) виден ведь
Σуатск 👦 ягодная 🍒 свежесть ✨ для мытья конф 👪 Без ГМО
B
Всем привет. Ребята, подскажите пожалуйста. У меня есть форма. При нажатии на кнопку Отправить, у меня в цикле по одному значению из TextInput отправляется на сервер. И с сервера приходит сообщение об успехе или ошибке. Вопрос: Как сделать текст сообщения об ошибке под TextInput?
Petr E
<Text>{this.state.error}</Text>
Vitaly
ed.t
Народ, подскажите плиз как к задаче подойти, как это вообще решается в теории.
Небольшой кусок нативного кода обрабатывает картинку и возвращает назад (допустим base64)
Потом это надо заслать на сервер и юзеру уже дать ссылку на изображение загруженное на сервер
ed.t
вопрос в том, что лучше возвращать нативномой части обратно в реакт-нейтив чтобы потом это было удобно заслать на сервак
Aleksei
Alexander
public componentWillUnmount(): void {
this.alertsStream.unsubscribe();
window.clearInterval(this.interval);
}
Как на такое написать тесты?
Никита
в formData и путь до файла подставить можно
ed.t
в смысле будет ли доступ к файлу
Никита
ну через image-picker картинка выбирается из галереи (нужен пермишен) и отправляется без проблем
Никита
если картинку сохранять в кеш прилки то и пермишен не потребуется
ed.t
понял, тогда надо решить траблу чтобы вернуть нормальный урл до файла из нейтив кода в реакт-нейтив
ed.t
я картинку сохраняю в отдельный альбом
ed.t
она еще пригодится юзеру потом
Никита
с base64 проще, но вероятно будет не очень быстро
ed.t
а что насчет депрекейтнутого assetslibrary? react-image-picker его юзает или это еще не скоро депрекейтнут?
ed.t
я попытался юзать PHPhotoLibrary но там нужна какая-то магия чтобы получить нормальный uri для картинки чтобы потом это отобразить в реакт-нейтив (так и не смог пока что)
Aleksandr
Всем привет! Подскажите, кто-нибудь делал поддержку bbcode?
Nikita
Всем привет!
Подскажите пожалуйста вот по какому вопросу: Делаю offline прилагу. Ввиду требований необзодимо работать с sql запросами. Мой выбор пал на react-native-sqlite-storage.
Без проблем все настроил, подключил и решил, что напишу модуль, который, будет работать с SQL запросами и возвращать мне результат (не важно какого запроса). Написал вотчер саги (юзаю redux-saga)для определенных типов экшенов для всех типов запросов. Получись что-то вроде https://paste.ubuntu.com/p/NNCjTxzdRB/
Т.е я в саге достаю инстанс базы и делаю
const data = yield call(QueryService, { db, query}) и не получаю вообще ничего...
Более того, .then невозможен т,к мне executeSql возвращает undefined
Если делать через callback https://paste.ubuntu.com/p/SKbQzDFNbP/
То console.log('results', results), безусловно, выведет данные, вот только обратно в сагу я их не прокину...
Если кто-нибудь работал с react-native-sqlite-storage подскажите пожалуйста, как вы решали проблемы или посоветуйте альтернативу для работы с SQLite
Привет, посмотри в сторону realm-js https://realm.io/docs/javascript/latest/
Там асинхронность идет уже из коробки (что касается .then), есть механизм миграций и в целом, имхо, как-то получше sqlite-storage под RN сделано.
Anton
Nikita
Ок, отлично!🙂
Gena
Nikita
Вроде под realm-js обычная Apache с уточнением для REALM COMPONENTS что нельзя модифицировать сами исходники realm-cocoa и realm-java, а в целом это royalty-free license to use the unmodified Licensed Software only for the purposes of integrating Licensed Software as backend for mobile application and deploying commercial production versions of such integrated applications
Nikita
т.е. пользовать и включать в состав приложения вроде бесплатно можно, а менять исходники уже нельзя
Gena
Cenator 🐈
Gena
Чтоб не обращаться в их платный саппорт, а самим выяснить почему что-то не работает.
Nikita
врядли в реалм так глубоко понадобиться погружаться) думаю это скорее чтобы не нарушать целостность интеграции с из платным облаком и чтобы конкурентов не создавать
Gena
ну я написал, что меня смущает и почему я не хочу такого vendor lock'а иметь в проектах. А так... "Каждый выбирает для себя..." )