React-Redux-Firebase новые хуки - PullRequest
       20

React-Redux-Firebase новые хуки

0 голосов
/ 07 января 2020

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

Этот код работает:

function BannerG() {

    const dispatch = useDispatch()
    // const banneAG = useSelector(state => state.banneAG)

    const firestore = useFirestore();
    useFirestoreConnect( props => [{collection : "layoutElements", doc: 'BannerG'}])
    const aa = useSelector(state  => state.firestore.data.layoutElements)
    console.log(aa)

В консоли печатается объект с {BannerG: {H1: бла, H2: бла-бла, …………}}

, но если я вместо этого использую

function BannerG() {

    const dispatch = useDispatch()
    // const banneAG = useSelector(state => state.banneAG)

    const firestore = useFirestore();
    useFirestoreConnect( props => [{collection : "layoutElements", doc: 'BannerG'}])
    const aa = useSelector(state  => state.firestore.data.layoutElements.BannerG)
    console.log(aa)

при запуске, выдает ошибку о том, что BannerG не определено Если я попытаюсь использовать позже, aa.BannerG.H1 также выдаст ошибку

У кого-нибудь есть идея, чтобы решить эту проблему?

1 Ответ

0 голосов
/ 13 января 2020

Я не смог найти его напрямую ни в одной ссылке, а только в примерах. enter image description here

Кажется, что useSelector нужны квадратные скобки, такие как:

const aa = useSelector(state  => state.firestore.data.layoutElements['BannerG'])

Я нашел это в примерах github реагировать-избыточно-огненная база , response-redux и на response-redux-firebase.com ссылка .

К сожалению, я пока не могу это проверить, поэтому, пожалуйста, дайте мне знать, если работает или нет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...