Денис
Здравствуйет, у кого в проектах установлены карты(react-native-maps) все хорошо работает? Просто возникла проблема, что если запускать проект через прилодение expo, то все рабоет, а если выпустить сборку и открыть карту в приложении, оно вылетает
Artem
Добрый вечер, какую библиотеку для билинга (покупок) посоветуете использовать? Какую сами используете?
Arthur
А зачем? Под 12-13 собирается же
Не запускается в том-то и дело. Выходит сообщение Class 'AppDelegate' does not conform to protocol 'RCTBridgeDelegate'. А в приложении черный экран. https://monosnap.com/direct/fduuV7fAJfG0yjb1jYxMoSkbxgHQIo
MirMohsun
Всем привет, ребята недавно начал на реакте писать приложения и есть куча вопросов в связи с исполнением redux: 1. Почему когда создаёшь несколько reducers в индексе когда я использую combinereducer и пишу как в документации у меня работает только один (первый второй даже не передаёт initial state). 2. Ситуация такая что у меня в store redux-a записываться определенные настройки (фоновая картинка приложения). Как я могу сохранить это состояние после того как человек полностью закроет приложение. Читал что в связке с redux-ом local storage не работает. Что делать?
ILΨλ
1 чтото делаешь не так проверь 2 https://github.com/rt2zz/redux-persist
MirMohsun
1 чтото делаешь не так проверь 2 https://github.com/rt2zz/redux-persist
Можно статью про combinereducer или на словах просто объяснить)
MirMohsun
1 чтото делаешь не так проверь 2 https://github.com/rt2zz/redux-persist
И вот этот redux-persist это как вспомогательное звено для редакса и стореджа?
Dmitry
Нет конечно, открой документацию и посмотри
Dmitry
Релакс персист для сохранения твоего стора редаксовского, в твоём случае закинь просто в async storage своё состояние и не парься
Dmitry
Но если тебе нужно чтобы и данные которые хранятся в сторе тоже засетались то прикручивай персист
Vitalik
Привет
Nikita
Всем привет! Пытаюсь заНПМить библиотеку (винда), а мне ругается на неустановленный Visual Studio. Я его установил, но шайтан машина все еще ругается на отсутствие VS... Кто нибудь сталкивался с такой чертовщиной?
Anton
Подскажите куда копать, чтобы реалтзовать двухстороннюю подгрузку данных в FlatList? (скроллим вверх - догружаются вверх, скроллим вниз - догружаются снизу)
Nikita
Напиши лог ошибки полностью
gyp ERR! find VS msvs_version was set from command line or npm config gyp ERR! find VS - looking for Visual Studio version 2017 gyp ERR! find VS VCINSTALLDIR not set, not running in VS Command Prompt gyp ERR! find VS checking VS2019 (16.4.29613.14) found at: gyp ERR! find VS "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community" gyp ERR! find VS - found "Visual Studio C++ core features" gyp ERR! find VS - found VC++ toolset: v142 gyp ERR! find VS - found Windows SDK: 10.0.18362.0 gyp ERR! find VS - msvs_version does not match this version gyp ERR! find VS could not find a version of Visual Studio 2017 or newer to use gyp ERR! find VS looking for Visual Studio 2015 gyp ERR! find VS - not found gyp ERR! find VS not looking for VS2013 as it is only supported up to Node.js 8 gyp ERR! find VS gyp ERR! find VS valid versions for msvs_version: gyp ERR! find VS - "2019" gyp ERR! find VS - "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community" gyp ERR! find VS gyp ERR! find VS ********************************************************** gyp ERR! find VS You need to install the latest version of Visual Studio gyp ERR! find VS including the "Desktop development with C++" workload. gyp ERR! find VS For more information consult the documentation at: gyp ERR! find VS https://github.com/nodejs/node-gyp#on-windows gyp ERR! find VS ********************************************************** gyp ERR! find VS gyp ERR! configure error gyp ERR! stack Error: Could not find any Visual Studio installation to use
Anton
gyp ERR! find VS msvs_version was set from command line or npm config gyp ERR! find VS - looking for Visual Studio version 2017 gyp ERR! find VS VCINSTALLDIR not set, not running in VS Command Prompt gyp ERR! find VS checking VS2019 (16.4.29613.14) found at: gyp ERR! find VS "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community" gyp ERR! find VS - found "Visual Studio C++ core features" gyp ERR! find VS - found VC++ toolset: v142 gyp ERR! find VS - found Windows SDK: 10.0.18362.0 gyp ERR! find VS - msvs_version does not match this version gyp ERR! find VS could not find a version of Visual Studio 2017 or newer to use gyp ERR! find VS looking for Visual Studio 2015 gyp ERR! find VS - not found gyp ERR! find VS not looking for VS2013 as it is only supported up to Node.js 8 gyp ERR! find VS gyp ERR! find VS valid versions for msvs_version: gyp ERR! find VS - "2019" gyp ERR! find VS - "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community" gyp ERR! find VS gyp ERR! find VS ********************************************************** gyp ERR! find VS You need to install the latest version of Visual Studio gyp ERR! find VS including the "Desktop development with C++" workload. gyp ERR! find VS For more information consult the documentation at: gyp ERR! find VS https://github.com/nodejs/node-gyp#on-windows gyp ERR! find VS ********************************************************** gyp ERR! find VS gyp ERR! configure error gyp ERR! stack Error: Could not find any Visual Studio installation to use
вот этой командой ставил? npm install --global --production windows-build-tools
Nikita
неа, пробую
Nikita
не помогло...(
Nikita
вот этой командой ставил? npm install --global --production windows-build-tools
отрапартовало: ---------- Visual Studio Build Tools ---------- Successfully installed Visual Studio Build Tools. ------------------- Python -------------------- Python 2.7.16 is already installed, not installing again. Now configuring the Visual Studio Build Tools.. All done!
Anton
Перезагрузи комп и попробуй еще раз
Nikita
но при установки библиотечки все так же ошибка
Nikita
ок
Anton
👌
A
Коллеги, добрый день. Писал нативный модуль для rn, отлавливаю зомби ошибку: [HCSChatViewController retain]: message sent to deallocated instance 0x118e70140
A
ошибку погуглил, относительно понятно в чем проблема, но в силу того, что не силён в obj c , как правильно пофиксать не знаю
A
@gblack9 , @savelichalex
Gena
ошибку погуглил, относительно понятно в чем проблема, но в силу того, что не силён в obj c , как правильно пофиксать не знаю
Ну фикс тут только один – продлить время жизни объекта либо не пытаться использовать объект после уничтожения...
Gena
И как вообще так получилось? Вы указатель на объект куда-то в C отправляете? Или забираете из ARC подсистемы через __bridge_transfer или __unsafe_unretained?
A
если правильно понял: то в js сам модуль импортируется вот так: const { RNHelpCrunch } = NativeModules; и тут дёргаются методы типа RNHelpCrunch.show() а в самом модуле импортится sdk #import <HelpCrunchSDK/HelpCrunch.h>
A
@interface RNHelpCrunch : NSObject <RCTBridgeModule>
A
код самого метода: RCT_EXPORT_METHOD(show :(RCTPromiseResolveBlock)resolve :(RCTPromiseRejectBlock)reject) { NSLog(@"show"); dispatch_async(dispatch_get_main_queue(), ^{ UIViewController *rootViewController = [UIApplication sharedApplication].delegate.window.rootViewController; [HelpCrunch showFromController:rootViewController completion:^(NSError * _Nullable error) { // If you need to do something on completion of SDK view controller presenting resolve([NSNull null]); }]; }); };
Arczi
Парни как называется такое меню в RN ??
Maxim
Парни как называется такое меню в RN ??
ActionSheet. Но не в RN. https://docs.nativebase.io/Components.html#actionsheet-def-headref
Gena
код самого метода: RCT_EXPORT_METHOD(show :(RCTPromiseResolveBlock)resolve :(RCTPromiseRejectBlock)reject) { NSLog(@"show"); dispatch_async(dispatch_get_main_queue(), ^{ UIViewController *rootViewController = [UIApplication sharedApplication].delegate.window.rootViewController; [HelpCrunch showFromController:rootViewController completion:^(NSError * _Nullable error) { // If you need to do something on completion of SDK view controller presenting resolve([NSNull null]); }]; }); };
Надо отдебажить какому именно объекту (хотя бы какого класса) отправляется сообщение (так в ObjC на самом деле обычный вызов метода называется) В этом коде упасть может только в одном месте - delegate может быть не выставлен, но тогда там просто nil будет, потому что delegate скорей всего weak pointer.
Arthur
Как присвоить delegate к self, если выходит ошибка Assigning to 'id<FIRMessagingDelegate> _Nullable' from incompatible type 'AppDelegate *const __strong'
Emin
Всем привет
Emin
Ребята не подскажите,как поменять название приложение и так же название пакета?
Emin
Многие попытки, в том числе пакет rename не помогает
Emin
Приложение не запускается,либо вылетает после запуска
Anton
Ребята не подскажите,как поменять название приложение и так же название пакета?
для ios приложения это делается в xcode буквально поменяв их названия в меню для android проще открыть через android studio и сделать все, что в гайде описано https://stackoverflow.com/a/29092698/5662244
Dmitry
всем привет, есть вопрос.Как остановить вызов саги?Я когда тяну данные, оно вызывает снова и снова сагу для загрузки.Данные это промис который приходит через 3 секунды через промис. Сага: export default function* fetchData() { try { const data = yield getData(); yield put(loadDataActions.fetchData()); yield put(loadDataActions.loadDataSucceeded(data)); } catch (e) { yield put(loadDataActions.loadDataFailed()); } }
Viktar
Чтобы с этим разобраться, нужно знать где и при каких условиях ты ее вызываешь
Dmitry
Чтобы с этим разобраться, нужно знать где и при каких условиях ты ее вызываешь
Сам помпонент: class LogbookView extends Component { componentDidMount() { const { onLoad } = this.props; onLoad(); } render() { const { navigation, data, isFetching } = this.props; console.log('isFetching', isFetching); return ( <Screen> <SafeAreaView style={styles.container}> {isFetching ? ( <ActivityIndicator size="large" color="#0000ff" /> ) : ( <SectionList sections={data} keyExtractor={(item, index) => index} renderItem={({ item }) => ( <LogBookTable onPress={navigationActions.navigateToEnterTotal} {...item} /> )} stickySectionHeadersEnabled={false} renderSectionHeader={({ section: { title } }) => ( <HeaderTable title={title} /> )} /> )} </SafeAreaView> </Screen> ); } } function mapStateToProps(state) { return { data: state.default.data, isFetching: state.default.isFetching, }; } function mapDispatchToProps(dispatch) { return { onLoad: () => dispatch(loadDataActions.fetchData()), }; }
Arthur
А сниппет кода можно?
Фух справилася.
Arthur
Я получаю побъект с сервера fcm. Он отображается в консоли. Все хорошо. Мне не понятно как показать все саму нотификацию. @gblack9
edo
why react native sqlite sometimes blank or cant pulling data? should restart apps
Денис
Может кто то знает бесплатный сервис где можно сгенерировать политику конфиденциальности для приложения + сайт где она будет храниться. Раньше использовал один сайт, но потерял его где-то
Nikita
Всем привет! Сейчас играюсь с expo-camera и обязан использовать телефон а не амулятор. Но с телефонным экспой какая-то странь. Он не обнавляет приложение. Т.е. всегда подтягивает только ту версию которая у него в Кэше. Помогает от этого пока только удалить и переустановить expo на телефоне. Кто нибудь с таким сталкивался? Как это лечить?
Nikita
Есть здесь счастливчики кому доводилось работать с expo-camera или его аналогов? У меня при вызове const takePicture = async () => { let data = await Сamera.takePictureAsync(); }; Ругается undefined is not a function (near '..._expoCamera.Camera.takePictureAsync...')] Можете задать направление мысли?
Alex
Импорт делаете Camera? Можно весь кусок кода?
Nikita
Импорт делаете Camera? Можно весь кусок кода?
import React, { useState, useEffect, useRef } from 'react'; import { View, TouchableOpacity, Text } from 'react-native'; import { Camera } from 'expo-camera'; import * as Permissions from 'expo-permissions'; import MainText from '../components/MainText'; const ScanScreen = () => { let camera = useRef(null); const [hasPermission, setHasPermission] = useState(null); const [type, setType] = useState(Camera.Constants.Type.back); useEffect(() => { (async () => { const { status } = await Permissions.askAsync(Permissions.CAMERA); setHasPermission(status === 'granted'); })(); }, []); const takePicture = async () => { let data = await camera.takePictureAsync(); }; return ( <View style={{ flex: 1 }}> <View style={{ flex: 1, justifyContent: 'flex-end', }} > <TouchableOpacity onPress={takePicture}> <Text>!!!!!!!!</Text> </TouchableOpacity> </View> <Camera style={{ flex: 1 }} type={type} ref={camera} > </Camera> </View> ); }; export default ScanScreen;
Anonymous
Всем привет
Anonymous
Подскажите пожалуйтса
Anonymous
Как отправить данные с второго экрана на первый ?
Anonymous
Я могу отправить данные с первого на второй
Anonymous
Но когда делаю по такому принципу у меня выходить ошибка undefined value
Gena
Как отправить данные с второго экрана на первый ?
Что такое экран? Без конкретизации абсолютно не понятно что вы делаете? В такой формулировке я могу посоветовать только одно – чтоб отправить данные из одного экрана в другой, надо либо воспользоваться API для пересылки данных между экранами, либо хранить эти данные в модели данных вашего приложения так, чтоб доступ к ним был из обоих экранов.
Anonymous
"react-navigation": "3.0.9"
Anonymous
https://snack.expo.io/S1wCkxkeL
Gena
"react-navigation": "3.0.9"
Тогда по API самого navigation врядли помогу, но независимо от этого, я бы "поднимал" данные в модель
Gena
Т.е. условно если на первом экране у меня список айтемов, я бы его держал в модели (в redux для большинства программистов, впрочем я когда есть возможность mobx использую).
Gena
Далее первый экран передает во второй id элемента, тот достаёт остальные данные по элементу из модели, показывает/позволяет редактировть его, измененяя модель, соответственно эти изменения отражаются и на первом экране
Gena
Это к примеру со списком айтемов, но и всё остальное так же делается...
Gena
Могут быть случаи, когда второй экран что-то очень простое, типа модалки с вопросом да/нет, тогда можно без "подъёма" данных в модель обойтись – первый экран передаёт во второй коллбэк, который тот вызывает с ответом, первый экран по этому коллбэку ререндерит себя (меняет стейт) и выполняет нужные действия
Anonymous
Спасибо нужно попробовать ваш метод, что-то новое
Anonymous
Ребята всем привет
Anonymous
Кто пользовалься react-native-calendars подскажите как изменить цвет выбранной даты ?
Anonymous
Вот так я выбираю даты, но при выборе цвет не меняется