Реализация двух провайдеров в приложении React - PullRequest
0 голосов
/ 01 февраля 2020

Я пытаюсь внедрить хранилище Redux в мое реактивное приложение. Я использую Auth0 для аутентификации и авторизации. Мне нужно хранить данные, такие как UserID и разрешения в моем магазине. В настоящее время мой индекс. js файл выглядит следующим образом:

// src/index.js

import React from "react";
import ReactDOM from "react-dom";
import App from "./App";
import * as serviceWorker from "./serviceWorker";
import { Auth0Provider } from "./react-auth0-spa";
import config from "./auth_config.json";
import history from "./utils/history";
import {createStore} from "redux";
import rootReducer from './redux/reducer';
import {Provider} from "react-redux";

//create Redux store
const store = createStore(rootReducer);

// A function that routes the user to the right place
// after login
const onRedirectCallback = appState => {
  history.push(
    appState && appState.targetUrl
      ? appState.targetUrl
      : window.location.pathname
  );
};

ReactDOM.render(
  
  <Auth0Provider
    domain={config.domain}
    client_id={config.clientId}
    redirect_uri={window.location.origin}
    audience={config.audience}
    onRedirectCallback={onRedirectCallback}
  >
    <App />
  </Auth0Provider>,
  document.getElementById("root")
);

Должен ли поставщик Redux обернуть поставщика Auth0 или Auth0 обернуть Redux?

1 Ответ

0 голосов
/ 01 февраля 2020

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

...