Sergey
Спасибо
Sergey
Dmitry
Sergey
Спасибо
Dmitry
Степан
всем привет, подскажите мб кто сталкивался, в TextInput если указать secureTextEntry для паролей, при повторном фокусе на инпут - очищается при изменении данных. Как сделать чтобы не было авто отчистки?
Dmitry
проблема решилась выносом всей логики в mobx
@gblack9 может у тебя будут соображения на этот счет? Вынес всю локигу, которая раньше была в state внутрь модели mobx и баг пропал. Подозреваю, что это из-за транзакций в mobx, но не могу сообразить, в чем конкретно фича
Олег
Всем привет есть ли какой способ вернуть объект а не Промис?
Maxim 📱 D
Maxim 📱 D
*на андроиде
Олег
Anonymous
Всем привет, завтра буду отправлять на проверку первую версию приложения с auto-renewable подпиской.
Валидацию receipt провожу на клиенте, соответственно devMode указываю там же.
Вопрос: review team использует же sandbox аккаунты? Как поступить в данной ситуации, после успешного прохождения проверки с помощью OTA поменять девмод на продакшн? Или же можно отправлять версию с валидацией не для sandbox?
Заранее спасибо за ответ 🙏
Dmitry
ну это даже не обсуждается) но направить все равно нужно
Dmitry
что-то слишком токсично...
GrafMine
привет всем, была ли у кого проблема со сторибуком что он просто показывал белый екран и не было даже возможности выбрать какойто сторис?
Denis
Всем привет! А FlatList ререндерится, если новые пропсы приходят в родительском компоненте?
Denis
Проблема в том, что в дочерний компонент пропсы пришли, но вот FlatList их не отображает. Если вместо FlatListа делаю Text, то все норм
Никита
Никита
liveEvent в state лежит?
Denis
да
Denis
я передаю в дочерний компонент true или false, деструктурирую и делаю проверку
Andrey
Надеюсь, никто не будет возражать против вопроса по JS?
const a = 1:
const b = 1:
console.log(a === b === 1); // false
не могу понять почему.
Если это некорректное выражение, то должна быть ошибка, но ошибки нет, значит все корректно.
Denis
liveEvent в state лежит?
разобарлся, передал liveEvent в extraData, заработало. Но для меня это загадка конечно, почему все-таки FlatList не перерендерился, если пришли пропсы?
Никита
No
Andrey
George
Denis
Мағжан
Господа программисты! Подскажите пожалуйста. При использовании React Navigation в приложении, нужно ли удалять те страницы которые уже не используются.
К примеру есть страница А, B, C.
Между страницами я перехожу через this.props.navigation.push()
И вот У меня с страницы А можно перейти на B. с страницы B на С, и с страницы С на А. Такой круговорот. Если я сделаю 2 кругов сколько страниц у меня создадутся? И вообще правильно ли я перехожу между страницами используя push. (Название функции меня пугает просто)
Nick
все _предыдущие_ экраны в стеке висят в памяти, пока не будет сделан navigation.back()
Nick
push() всегда порождает рендер нового экрана в отличие от navigate()
Nick
хотя в случае такого цикличного перехода есть вероятность, что класс экрана будет висеть в стеке как синглтон, это надо практическим путем выяснять. не помню, чтоьбы в документации было описно такое
Мағжан
У меня на странице А список новостей, Страница В, С это фильтры. На странице В выбираю Регион, а на странице С город. и вот при выборе города мне надо попасть на страницу А но уже готовым фильтром...
Nick
Мағжан
А он параметры умеет передавать?
Мағжан
Шас сам спрошу у гугла, в любом случае спасибо!)))
Никита
Nick
pop/popToTop параметры не умеют
Nick
там единственный параметр – количество экранов, на которое надо вернуться
Мағжан
Ясно, спасибо
Serhii
Привет, новичок в реакте, перехожу с xamarin, может кто посоветовать что стоит почитать и с чего начинать?
Khorark
Кто как организовывал задержку для отправки push? Где было решение - на сервере или клиенте? К примеру, нужно не отправлять push с 00:00 до 09:00. Поделитесь информацией пожалуйста
Khorark
Khorark
Serhii
Kto?
Narek
привет всем
Narek
кто использует библиотеку react-native-animatable ?
Narek
хотел сделать с помощью него набор текста, на ios все ок работает, на android текст показывает без анимации
Narek
import React, { Component } from 'react';
import { Text, TouchableOpacity } from 'react-native';
import * as Animatable from 'react-native-animatable';
export default class TypingText extends Component {
state = {
readyText: {},
}
componentWillMount() {
const { text } = this.props;
const readyText = {};
let index = 0;
for (let i = 0; i < text.length; i++) {
if (i % 3 === 0) {
index++;
readyText[index] = this.props.text.slice(index * 3 - 3, (index * 3));
}
}
this.setState({ readyText });
}
componentDidMount() {
const { readyText } = this.state;
const { typingAnimationDuration } = this.props;
const delay = Object.keys(readyText).length * typingAnimationDuration;
setTimeout(() => {
this.props.setShowAll();
}, delay);
}
render() {
const { readyText } = this.state;
const { showAll, text, typingAnimationDuration } = this.props;
return (
<TouchableOpacity activeOpacity={1} onPress={this.props.setShowAll} style={{ flex: 1 }}>
<Text style={{ color: this.props.color, fontSize: this.props.textSize, textAlign: 'center', lineHeight: 21 }}>
{
(showAll) ? <Text>{text}</Text> : <Text>
{
Object.keys(readyText).map((item, index) => <Animatable.Text
key={`animatedText${index}${readyText[item]}${text}`}
duration={100}
animation={'fadeIn'}
delay={typingAnimationDuration * index}
useNativeDriver={false}
>{readyText[item]}</Animatable.Text>)
}
</Text>
}
</Text>
</TouchableOpacity>
);
}
}
Narek
(извините за портянку))
Narek
может андроид не вывозит fps?
Khorark
Narek
Khorark
componentWillMount deprecated
Gena
Dmitry
Dmitry
Меня смущает то, что внутри mobx тот же самый код, без тайм-аутов работает абсолютно нормально. Получается проблема именно в том, как отрабатывает setState
Gena
Меня смущает то, что внутри mobx тот же самый код, без тайм-аутов работает абсолютно нормально. Получается проблема именно в том, как отрабатывает setState
Не обязательно это проблема, возможно setState отрабатывает быстрее, а mobx-react с задержкой в несколько микротиков. Тут ещё недавно mobx-react колбасило, они там радостно поддержку хуков впилили, да так, что испортили все нормальные компоненты, потом откатывали, так что и от версии может зависеть и от кода, он там совсем не такой простой.
Dmitry
ну здесь, не то что задержка, а просто неадекватно поведение.
1. каждый последовательный pull-to-request отрабатывает корректно
2. каждый refreshing устанавливаемый через setState срабатывает несколько раз, после чего индикатор перестает появляться и, если потянуть список вниз, индикатор показывается с зависшем состоянии.
3. если запустить refreshing и сделать pull-to-request до установки setState({ refreshing: true }), то поведение будет, как в пунке 2.
причем setState({ refreshing: false }) игнорируется, но если его обернуть в setTimeout(() => {}, 500) индикатор сбросится, но с дерганием.
Я вообще первый раз с таким сталкиваюсь и жалко, что не выделяют время на детальное изучение…
Dmitry
во всяком случае, можно добавить +1 в копилку mobx, так как всю логику я переложил на модель минут за 15 =)
Gena
ну здесь, не то что задержка, а просто неадекватно поведение.
1. каждый последовательный pull-to-request отрабатывает корректно
2. каждый refreshing устанавливаемый через setState срабатывает несколько раз, после чего индикатор перестает появляться и, если потянуть список вниз, индикатор показывается с зависшем состоянии.
3. если запустить refreshing и сделать pull-to-request до установки setState({ refreshing: true }), то поведение будет, как в пунке 2.
причем setState({ refreshing: false }) игнорируется, но если его обернуть в setTimeout(() => {}, 500) индикатор сбросится, но с дерганием.
Я вообще первый раз с таким сталкиваюсь и жалко, что не выделяют время на детальное изучение…
Если выделят, то копать надо в реализацию скролла... Не то чтоб баг именно здесь, но вот подумай, вот это выполняется в ui треде, а установка св-ва isRefreshing инициируется в js: https://github.com/facebook/react-native/blob/0.59-stable/React/Views/ScrollView/RCTScrollView.m#L526
Да тут что угодно может происходить. При этом, вообще схема очень стремная, т.к. как бы у RCTRefreshControl есть свой view manager, но им ещё управляет RCTScrollView - очень опасно...
Gena
А учитывая, что флаг там бинарный (isRefreshing), а включение/выключение анимированное, да ещё с жестами...
Dmitry
наверное это хорошо)
Gena
Гы. Надеюсь, послужит противовесом разбушевавшемуся Абрамову... Но вообще, плохо, что фейсбук выдергивает разработчиков. Они после этого начинают решать проблемы фейсбука, а не проблемы сообщества или какие-то свои независимые.
Dmitry
я тоже надеюсь, что этот переход не скажется на судьбе mobx
Dmitry
Gena
Dmitry
я даже думаю, что скорее всего так и есть
Dmitry
а тут просто setState проскакивает, до завершения анимации и игнорится
Gena
Я тоже надеюсь на лучшее )