Показать компонент на всех экранах с React-Native-Router-Flux - React Native - PullRequest
0 голосов
/ 05 июля 2019

У меня есть проект, основанный на RNRF, и мне нужно показать компонент обратного отсчета на всех экранах в соответствии с состоянием Redux.

Мне нужно установить обратный отсчет в правом нижнем углу на всех экранах:

enter image description here

Я пытаюсь установить в провайдере, но не могу прочитать состояние из хранилища резервов, чтобы включить или отключить счетчик.

<Provider store={store}>
    <PersistGate loading={null} persistor={persistor}>
        <Router />
        <Counter
            data={'123456'}
            mission={'1'}
            bgColor={'#6F31E2'}
            textColor={'#FFFFFF'}
        />
    </PersistGate>
</Provider>

Возможно ли это сделать с помощью React Native Router Flux?

1 Ответ

1 голос
/ 05 июля 2019

Это на 100% возможно, если разместить компонент Counter внутри вашего App.js, как вы делали это во фрагменте кода.

Я не уверен, что вы подразумеваете под тем, что вы не можете получить доступ к состоянию из хранилища избыточных данных.Я только что создал демо-счетчик в одном из моих существующих производственных приложений, чтобы проверить это.До тех пор, пока вы используете функцию «connect» изact-redux, вы сможете подключаться к глобальному хранилищу избыточности в вашем компоненте Counter:

Вот мой рабочий файл Counter.js, который я использовал в своей демонстрации:

enter image description here

Редактировать для пояснения: Использование connect позволит самому компоненту счетчика иметь возможность доступа к хранилищу вместо попытокпередать избыточное хранилище через реквизит из файла App.js.

...