Size: a a a

React Native — русскоговорящее сообщество

2020 May 05

Alibek Кulseitov in React Native — русскоговорящее сообщество
Denis Dedov
Товарищи, подскажите, как решить проблему! На экран с соотношением сторон не 16:9 вот такая беда(скрин ниже). Когда-то видел, что используються не значения прописанные вручную, а с помощью вродебы display что-то там. Подскажите как решить пожалуйста!
Flex: 0 0 100%, max-width: 100%
источник

ЮС

Юрий Слободчиков... in React Native — русскоговорящее сообщество
Alexey Kureev
Как бы да, но нет.  В контексте Expo, например, речь идёт о managed workflow и bare workflow. Мне сильно ухо режет, когда я говорю «контролируемый рабочий процесс» и подразумеваю под этим managed workflow. Но с другой стороны я втыкал секунд 30 над тем, что «функция обратного вызова» — это коллбэк
А "зов зада" не напрягает?
источник

ДА

Данила Андреев... in React Native — русскоговорящее сообщество
Данила Андреев
Есть компонент картинки, который во время загрузки картинки с постороннего ресурса ставит плейсхолдер бэкграунд и с фэйдом показывает картинку, когда она успешно загрузилась.
Использую его в FlatList, в котором можно удалять айтемы, список при изменени данных незаметно перерендеривается для пользователя, как и должно быть. Но в картинке триггерится евент загрузки снова6 хоть он его и достает из кеша наверняка. Соответсвенно появляется мигание. Подскажите кто-нибудь как задетектить, что картинка уже загружена и не выполнять никаких манипуляций снова с бэкграундом и фэйд анимацией.
export const Image: FC<ImageProps> = (props) => {
 const { style, placeholderBackgroundColor, onLoadEnd, ...otherProps } = props;

 const theme = useTheme();
 const [opacity] = useState(() => new Animated.Value(0));
 const backgroundColor = useMemo(
   () => placeholderBackgroundColor ?? theme.colors.backgroundTertiary,
   [theme, placeholderBackgroundColor],
 );

 const handleLoadEnd = useCallback(
   (p) => {
     console.log('onLoadEnd');
     Animated.timing(opacity, {
       toValue: 1,
       duration: 150,
       easing: Easing.linear,
     }).start();

     if (onLoadEnd) {
       onLoadEnd();
     }
   },
   [onLoadEnd, opacity],
 );

 return (
   <View
     style={[
       style,
       {
         backgroundColor,
       },
     ]}
   >
     <Animated.Image
       onLoadEnd={handleLoadEnd}
       style={[
         style,
         {
           opacity,
         },
       ]}
       {...otherProps}
     />
   </View>
 );
};
Никто не делал подобное? До сих пор не разобрался.
источник

AM

Alexsandr Menshikov in React Native — русскоговорящее сообщество
Данила Андреев
Никто не делал подобное? До сих пор не разобрался.
Анимайтед используй через ref
источник

GB

Gena Black in React Native — русскоговорящее сообщество
Данила Андреев
Никто не делал подобное? До сих пор не разобрался.
У вас есть апи для проверки наличия картинки в кеше... правда асинхронное... можно с ним мучиться. Можно просто задержать показ прелоадера на 200мс, этого должно хватить чтоб не мигало... что тут непонятного?
источник

ДА

Данила Андреев... in React Native — русскоговорящее сообщество
Alexsandr Menshikov
Анимайтед используй через ref
Да, поправил, спасибо. Раньше через useState делал всегда, в доке кстати именно этот подход использовался.
источник

ДА

Данила Андреев... in React Native — русскоговорящее сообщество
Gena Black
У вас есть апи для проверки наличия картинки в кеше... правда асинхронное... можно с ним мучиться. Можно просто задержать показ прелоадера на 200мс, этого должно хватить чтоб не мигало... что тут непонятного?
О каком апи идет речь?
источник

GB

Gena Black in React Native — русскоговорящее сообщество
Данила Андреев
О каком апи идет речь?
Об апи RN
источник

AM

Alexsandr Menshikov in React Native — русскоговорящее сообщество
Данила Андреев
Да, поправил, спасибо. Раньше через useState делал всегда, в доке кстати именно этот подход использовался.
UseState вызывает переренд
источник

ДА

Данила Андреев... in React Native — русскоговорящее сообщество
Gena Black
Об апи RN
Как проверить есть ли картинка в кэше? queryCache()?
источник

GB

Gena Black in React Native — русскоговорящее сообщество
Данила Андреев
Как проверить есть ли картинка в кэше? queryCache()?
Да
источник

ДА

Данила Андреев... in React Native — русскоговорящее сообщество
Не пользовался раньше просто. Спасибо, попробую что-то с ним придумать.
источник

AS

Andrey Sorokin in React Native — русскоговорящее сообщество
Привет! Пытаюсь сделать простую вещь! Создать свою страницу после регистрации в AWS AMplify! Сижу у же второй день! простите нихуя не получается! Есть кто может подскажите что не так! НАданынй момент добился того что оно не падает и заходит в метод который ловит событие входа но перехода по навигации нет вот ссылка на проект!  https://github.com/TasksAndreySorokin/aws-amplify-my-signin
источник

GB

Gena Black in React Native — русскоговорящее сообщество
Это технический чат, не для предложений о работе.
источник

YK

Yuri Korhau in React Native — русскоговорящее сообщество
Gena Black
Это технический чат, не для предложений о работе.
Хм, странная позиция. В правилах же не указано, я специально прочитал правила, проверил не нарушаю ли я их и после этого опубликовал
источник

DT

Daniil Tchernyavsky in React Native — русскоговорящее сообщество
Yuri Korhau
Хм, странная позиция. В правилах же не указано, я специально прочитал правила, проверил не нарушаю ли я их и после этого опубликовал
источник

G

Grzegorz in React Native — русскоговорящее сообщество
https://www.npmjs.com/package/react-native-extended-stylesheet
Использовал кто-то? А то из коробки нет псевдоселекторов и тд
источник

AM

Alexsandr Menshikov in React Native — русскоговорящее сообщество
Yuri Korhau
Хм, странная позиция. В правилах же не указано, я специально прочитал правила, проверил не нарушаю ли я их и после этого опубликовал
Без вакансий
источник

AK

Alexey Kureev in React Native — русскоговорящее сообщество
Юрий Слободчиков
А "зов зада" не напрягает?
лол. О чем речь?
источник

AM

Alexsandr Menshikov in React Native — русскоговорящее сообщество
Alexey Kureev
лол. О чем речь?
call back
источник