Was wird als "Redux" -Weg von in die Konfiguration von Action-Ersteller?Ordnungsgemäße Methode zum Übergeben der Konfiguration an Redux-Aktions-Ersteller
Betrachten wir ein Asynchron-Aktion Schöpfer:
export function login(username, password) {
return (dispatch, getState) => {
const service = Auth.createService(config); // <- that's the one
service.login(username, password).then((data) => {
const {token} = data;
dispatch(success(token));
}).catch((err) => {
Logger.log(err);
});
};
}
Wie Sie sehen können - AuthService
(und alle anderen Dienste) erfordern eine Konfiguration, die normalerweise Dinge wie definiert: baseUrl
, headers
und vieles mehr.
sie require
d im AuthService
Nachdem sich über so etwas wie:
import configfrom '../config/globalConfig`;
suboptimal für Vielzahl von Gründen und hat man sie nicht zulassen, außer Kraft setzen für eine bestimmte Dienstinstanz.
eine Middleware (einige Erweiterung über redux-thunk
) Mit Hilfe würde die Möglichkeit bieten, um die Konfiguration zu injizieren, aber:
es höchstwahrscheinlich bereits über
getState
injiziert, da mir, Konfiguration ist ein Teil von der Anwendungszustand, besonders wenn es editierbares würde immer noch nicht überschreibt auf pro-creator Basis ermöglichen
Die Konfiguration von Containerkomponenten direkt an den Aktionsersteller this.props.dispatch(login(username, password, config));
zu übergeben, ist sehr ausführlich.