Redux ist hauptsächlich für den "Anwendungsstatus" vorgesehen. Das heißt, alles, was mit Ihrer Anwendungslogik zu tun hat. Die darauf erstellte Ansicht spiegelt diesen Zustand wider, muss diesen Zustandscontainer jedoch nicht ausschließlich für alles verwenden, was er tut.
Stellen Sie einfach folgende Fragen: Ist dieser Status für den Rest der Anwendung wichtig? Werden sich andere Teile der Anwendung basierend auf diesem Status anders verhalten? In vielen kleineren Fällen wird dies nicht der Fall sein. Nehmen Sie ein Dropdown-Menü: Die Tatsache, dass es geöffnet oder geschlossen ist, hat wahrscheinlich keine Auswirkungen auf andere Teile der App. Die Verkabelung mit Ihrem Geschäft ist wahrscheinlich übertrieben. Es ist sicherlich eine gültige Option, bringt Ihnen aber keine wirklichen Vorteile. Du bist besser dran this.state
, es einen Tag zu benutzen und zu nennen.
Wird in Ihrem Beispiel die Farbe dieser Schaltfläche umgeschaltet, um einen Unterschied in anderen Teilen der Anwendung zu bewirken? Wenn es sich bei einem Großteil Ihrer Anwendung um eine Art globales Ein- / Ausschalten handelt, gehört es definitiv in den Store. Wenn Sie jedoch nur auf eine Schaltflächenfarbe umschalten, wenn Sie auf die Schaltfläche klicken, können Sie den Farbstatus lokal definiert lassen. Das Klicken auf die Schaltfläche kann andere Auswirkungen haben, die einen Aktionsversand erfordern. Dies unterscheidet sich jedoch von der einfachen Frage, welche Farbe sie haben soll.
Versuchen Sie im Allgemeinen, Ihren Anwendungsstatus so klein wie möglich zu halten. Sie müssen nicht alles hineinschieben . Tun Sie es, wenn Sie müssen, oder es macht sehr viel Sinn, etwas dort zu behalten. Oder wenn es Ihnen das Leben mit Dev Tools erleichtert. Aber überladen Sie seine Bedeutung nicht zu sehr.