@@ -17,6 +17,7 @@ import ScheduleModal from "../modal/ScheduleModal";
17
17
// state.type:"add" 은 스케줄 추가, state.type:edit은 수정
18
18
const ScheduleAdd = ( ) => {
19
19
const dispatch = useDispatch ( ) ;
20
+ const navigate = useNavigate ( ) ;
20
21
//스케줄 추가, 수정 분기를 결정할 state 값을 받아옴
21
22
const { state } = useLocation ( ) ;
22
23
@@ -27,12 +28,11 @@ const ScheduleAdd = () => {
27
28
dispatch ( scheduleReset ( ) ) ;
28
29
}
29
30
} , [ ] ) ;
31
+
30
32
//전역으로 받아오는 state
31
33
const oldSchedule = useSelector ( ( state ) => state . ScheduleSlice . oldschedules ) ;
32
34
console . log ( "수정할 스케줄" , oldSchedule ) ;
33
35
34
- const navigate = useNavigate ( ) ;
35
-
36
36
//필요한 변수들
37
37
//날짜
38
38
const [ selectedDate , setSelectedDate ] = useState (
@@ -41,7 +41,11 @@ const ScheduleAdd = () => {
41
41
: ""
42
42
) ;
43
43
44
- const [ selectedColor , setColorSelected ] = useState ( "sora" ) ;
44
+
45
+ const [ selectedColor , setColorSelected ] = useState (
46
+ state . type === "edit" ? oldSchedule . cardColor : "sora"
47
+ ) ;
48
+
45
49
46
50
//제목
47
51
const [ subject , setSubject ] = useState (
@@ -53,9 +57,27 @@ const ScheduleAdd = () => {
53
57
state . type === "edit" ? oldSchedule . content : ""
54
58
) ;
55
59
56
- const [ borderSora , setBorderSora ] = useState ( "border-blackBorder" ) ;
57
- const [ borderPink , setBorderPink ] = useState ( "border-none" ) ;
58
- const [ borderGreen , setBorderGreen ] = useState ( "border-none" ) ;
60
+ const [ borderSora , setBorderSora ] = useState (
61
+ state . type !== "edit"
62
+ ? "border-blackBorder"
63
+ : oldSchedule . cardColor === "sora"
64
+ ? "border-blackBorder"
65
+ : "border-none"
66
+ ) ;
67
+ const [ borderPink , setBorderPink ] = useState (
68
+ state . type !== "edit"
69
+ ? "border-none"
70
+ : oldSchedule . cardColor === "pink"
71
+ ? "border-blackBorder"
72
+ : "border-none"
73
+ ) ;
74
+ const [ borderGreen , setBorderGreen ] = useState (
75
+ state . type !== "edit"
76
+ ? "border-none"
77
+ : oldSchedule . cardColor === "green"
78
+ ? "border-blackBorder"
79
+ : "border-none"
80
+ ) ;
59
81
60
82
//완료모달&경고모달
61
83
const [ modalOpen , setModalOpen ] = useState ( false ) ;
@@ -87,7 +109,7 @@ const ScheduleAdd = () => {
87
109
const onContentChangeHandler = ( e ) => {
88
110
setContent ( e . target . value ) ;
89
111
} ;
90
- //팔로우 선택 // 추가작업 필요
112
+ //팔로우 선택
91
113
const [ participants , setParticipants ] = useState ( [ ] ) ;
92
114
const onParticipantsChangeHandler = ( e ) => {
93
115
// setParticipants(e.target.value);
@@ -156,7 +178,7 @@ const ScheduleAdd = () => {
156
178
) }
157
179
{ modalOpen && < ScheduleModal setModalOpen = { setModalOpen } /> }
158
180
{ completeModal && (
159
- < ScheduleAddModal setCompleteModal = { setCompleteModal } />
181
+ < ScheduleAddModal state = { state } setCompleteModal = { setCompleteModal } />
160
182
) }
161
183
< div className = "text-[#121213] " >
162
184
< div className = { "bg-[#F8FCFF] flex p-[20px] text-base" } >
@@ -206,28 +228,29 @@ const ScheduleAdd = () => {
206
228
} }
207
229
onChange = { ( ) => onParticipantsChangeHandler }
208
230
placeholder = "함께할 친구들을 선택해주세요.(최대 5명)"
209
- className = "mt-4 shadow
210
- hover:bg-sky-100
211
- text-center placeholder-placeHolder
212
- w-[335px]
213
- h-12
214
- bg-input
215
- justify-center
216
- text-l
217
- rounded-md
218
- text-black
219
- font-light
220
- p-4
221
- disabled
222
- "
231
+ className = { `mt-4 shadow hover:bg-sky-100 text-center placeholder-placeHolder w-[335px] h-12 bg-input justify-center text-l rounded-md text-black font-light p-4 ${
232
+ state . type === "edit" ? "pointer-events-none" : ""
233
+ } `}
234
+ disabled = { state . type === "edit" }
223
235
>
224
- { joinerWithoutDuplicate . length > 0 ? (
236
+ { state . type === "edit" ? (
237
+ < div className = "text-placeHolder" >
238
+ 수정중에는 참여자를 변경 할 수 없습니다.
239
+ </ div >
240
+ ) : joinerWithoutDuplicate . length > 0 ? (
225
241
< div className = " text-placeHolder" > { selectedJoinersName } </ div >
226
242
) : (
227
243
< div className = " text-placeHolder" >
228
244
함께할 친구들을 선택해주세요.(최대 5명)
229
245
</ div >
230
246
) }
247
+ { /* {joinerWithoutDuplicate.length > 0 ? (
248
+ <div className=" text-placeHolder">{selectedJoinersName}</div>
249
+ ) : (
250
+ <div className=" text-placeHolder">
251
+ 함께할 친구들을 선택해주세요.(최대 5명)
252
+ </div>
253
+ )} */ }
231
254
</ div >
232
255
</ div >
233
256
< div className = "flex flex-col mt-6 font-medium " >
0 commit comments