Mit redux versuche ich eine "Hilfsfunktion" in meinem redux-Modul zu schreiben, die gefilterte Daten aus dem Zustand zurückgibt, basierend darauf, welchen Index ich passiere. Diese Daten werden verwendet, um basierend auf auth: true
oder budt: true
eine Form von Eingaben aufzubauen. Das Formular würde im Grunde über alleTypen für diese Ebene iterieren und die Auth- oder Budt-Eingaben bedingt anzeigen/verbergen.Wie kann ich eine Hilfstyp-Funktion in meinem Redux-Modul erstellen, um eine gefilterte Menge von Readonly-Daten aus dem Status zurückzugeben?
der Zustand gegeben ...
totypesmap: [
{
level:1,
totypes:[
{ttno:1, ttcode:'', ttdesc:'regular', auth:true, budt:false},
]
}
]
Ich habe eine Funktion in meinem Modul exportiert, die ein index
Argument erwartet und gibt seinen entsprechenden totypesmap[index]
vom Zustand. Um jedoch von innen heraus zu kommen, muss ich getState()
verwenden, was erwartet, dass eine Zusage mit den von mir angenommenen Daten aufgelöst wird.
Sollte ich dies auf eine andere Weise erreichen?
export const MyTOTypes = (level) => {
return (dispatch, getState) => {
const state = getState()
// return state.masterdata.totypesmap[level].totypes
}
}
In meinem Behälter oder Komponente ich einfach import { MyTOTypes } from 'redux/modules/masterdata'
und dann nennen, wenn ich die TO-Typen wissen müssen zugewiesen mein „Level“ MyTOTypes(0)
der Stammdaten ist nicht wirklich konstant betrachtet, als aus dem Backend auf componentDidMount gezogen und geschoben in den Laden. Ich muss im Grunde eine Funktion schreiben, die die totypesmap genau auf die Ebene filtert, die ich möchte. Ich könnte eine Funktion in jedem Container schreiben, aber das ist repetitiv. Die Idee besteht darin, diese Funktion überall verwenden zu können und nicht den Status übergeben zu müssen. – gorelative
dann haben Sie Ihre Hilfsfunktion nehmen 'state' als das erste Argument und lassen Sie Ihre Komponenten die Hilfsfunktion aus der' mapStateToProps' Methode von 'connect' aufrufen. – Brandon