Was ist der beste Weg, um auf den Redux-Speicher außerhalb einer Reaktionskomponente zuzugreifen?
@connect
funktioniert hervorragend, wenn ich versuche, innerhalb einer Reaktionskomponente auf den Store zuzugreifen. Aber wie soll ich in einem anderen Code darauf zugreifen. Zum Beispiel: Angenommen, ich möchte ein Autorisierungstoken zum Erstellen meiner Axios-Instanz verwenden, das global in meiner App verwendet werden kann. Was wäre der beste Weg, um dies zu erreichen?
Das ist meinapi.js
// tooling modules
import axios from 'axios'
// configuration
const api = axios.create()
api.defaults.baseURL = 'http://localhost:5001/api/v1'
api.defaults.headers.common['Authorization'] = 'AUTH_TOKEN' // need the token here
api.defaults.headers.post['Content-Type'] = 'application/json'
export default api
Nun möchte ich auf einen Datenpunkt in meinem Geschäft zugreifen. So würde es aussehen, wenn ich versuchen würde, ihn mit @ in einer Reaktionskomponente abzurufe@connect
// connect to store
@connect((store) => {
return {
auth: store.auth
}
})
export default class App extends Component {
componentWillMount() {
// this is how I would get it in my react component
console.log(this.props.auth.tokens.authorization_token)
}
render() {...}
}
Haben Sie Einblicke oder Workflow-Muster?