From 9717f0cd6644b88be0c9289abeafac59fc7011c5 Mon Sep 17 00:00:00 2001 From: Trevor Buckner Date: Wed, 18 Sep 2024 15:09:53 -0400 Subject: [PATCH] Split state into separate states. --- .../notificationAdd/notificationAdd.jsx | 47 +++++++------------ 1 file changed, 17 insertions(+), 30 deletions(-) diff --git a/client/admin/notificationUtils/notificationAdd/notificationAdd.jsx b/client/admin/notificationUtils/notificationAdd/notificationAdd.jsx index 1aaf11945..e096a691b 100644 --- a/client/admin/notificationUtils/notificationAdd/notificationAdd.jsx +++ b/client/admin/notificationUtils/notificationAdd/notificationAdd.jsx @@ -4,11 +4,9 @@ const { useState, useRef } = require('react'); const request = require('superagent'); const NotificationAdd = ()=>{ - const [state, setState] = useState({ - notificationResult : null, - searching : false, - error : null, - }); + const [notificationResult, setNotificationResult] = useState(null); + const [searching, setSearching] = useState(false); + const [error, setError] = useState(null); const dismissKeyRef = useRef(null); const titleRef = useRef(null); @@ -25,17 +23,11 @@ const NotificationAdd = ()=>{ // Basic validation if(!dismissKey || !title || !text || isNaN(startAt.getTime()) || isNaN(stopAt.getTime())) { - setState((prevState)=>({ - ...prevState, - error : 'All fields are required', - })); + setError('All fields are required'); return; } - if(startAt >= stopAt) { - setState((prevState)=>({ - ...prevState, - error : 'End date must be after the start date!', - })); + if (startAt >= stopAt) { + setError('End date must be after the start date!'); return; } @@ -48,7 +40,8 @@ const NotificationAdd = ()=>{ }; try { - setState((prevState)=>({ ...prevState, searching: true, error: null })); + setSearching(true); + setError(null); const response = await request.post('/admin/notification/add').send(data); console.log(response.body); @@ -57,18 +50,12 @@ const NotificationAdd = ()=>{ titleRef.current.value = ''; textRef.current.value = ''; - setState((prevState)=>({ - ...prevState, - notificationResult : `Notification successfully created.`, - searching : false, - })); - } catch (error) { + setNotificationResult('Notification successfully created.'); + setSearching(false); + } catch (err) { console.log(error.response.body.message); - setState((prevState)=>({ - ...prevState, - error : `Error saving notification: ${error.response.body.message}`, - searching : false, - })); + setError(`Error saving notification: ${err.response.body.message}`); + setSearching(false); } }; @@ -108,13 +95,13 @@ const NotificationAdd = ()=>{ -
{state.notificationResult}
+
{notificationResult}
- - {state.error &&
{state.error}
} + {error &&
{error}
} ); };