aboutsummaryrefslogtreecommitdiff
path: root/src/models/questionSlice.ts
diff options
context:
space:
mode:
Diffstat (limited to 'src/models/questionSlice.ts')
-rw-r--r--src/models/questionSlice.ts22
1 files changed, 9 insertions, 13 deletions
diff --git a/src/models/questionSlice.ts b/src/models/questionSlice.ts
index e3674be..814caf9 100644
--- a/src/models/questionSlice.ts
+++ b/src/models/questionSlice.ts
@@ -1,4 +1,4 @@
-import {createSlice, PayloadAction} from '@reduxjs/toolkit'
+import {createSelector, createSlice, PayloadAction} from '@reduxjs/toolkit'
import type {RootState} from '@/store'
import {UpkQuestion} from "@/api";
@@ -14,22 +14,18 @@ const questionSlice = createSlice({
questionAdded(state, action: PayloadAction<UpkQuestion>) {
state.push(action.payload);
},
- setAnswer(state, action: PayloadAction<{ questionId: string, val: string }>) {
- const {questionId, val} = action.payload
- console.log(questionId, val)
- const existingQuestion = state.find(q => q.questionId === action.payload.questionId)
- if (existingQuestion) {
- // existingQuestion.addAnswer(action.payload.val)
- // existingQuestion.error_msg = "yess"
- }
- }
}
})
-// Export the generated reducer function
export const {setAnswer, setQuestions, questionAdded, questionUpdated} = questionSlice.actions;
export default questionSlice.reducer
-export const selectAllQuestions = (state: RootState) => state.questions
+// export const selectAllQuestions = (state: RootState) => state.questions
-export const selectQuestionById = (state: RootState, questionId: string) => state.questions.find(q => q.id === questionId) \ No newline at end of file
+export const selectQuestionById = (questionId: string) =>
+ createSelector(
+ (state: RootState) => state.questions,
+ (questions) => {
+ return questions.find(q => q.question_id === questionId);
+ }
+ ); \ No newline at end of file