Logik für Farbe abhängig von Status + Invertierung:

Anzeige ist rot wenn Status=1 ist. Die Farbe ist nicht abhängig von der Invertierung.
Status	Invertierung	Anzeige
1                1	            🔴 rot
1	             0	            🔴 rot
0	             1	            grün
0	             0              grün
This commit is contained in:
ISA
2025-04-03 11:04:49 +02:00
parent 2f631e80be
commit 75759791cd
7 changed files with 129 additions and 10 deletions

View File

@@ -7,6 +7,7 @@ interface DigitalInput {
status: boolean;
counter: number;
flutter: number;
invertierung: boolean;
}
interface DigitalInputsState {
@@ -34,8 +35,19 @@ const digitalInputsSlice = createSlice({
input.status = status;
}
},
updateInvertierung: (
state,
action: PayloadAction<{ id: number; invertierung: boolean }>
) => {
const { id, invertierung } = action.payload;
const input = state.inputs.find((input) => input.id === id);
if (input) {
input.invertierung = invertierung;
}
},
},
});
export const { setInputs, updateInputStatus } = digitalInputsSlice.actions;
export const { setInputs, updateInputStatus, updateInvertierung } =
digitalInputsSlice.actions;
export default digitalInputsSlice.reducer;