1
1
import React , { useEffect , useRef , useState } from "react" ;
2
- import { useDispatch } from "react-redux" ;
2
+ import { useDispatch , useSelector } from "react-redux" ;
3
3
import { useNavigate } from "react-router-dom" ;
4
- import { __nickNameCheck } from "../../redux/modules/SingupSlice" ;
4
+ import { __closeModal , __nickNameCheck } from "../../redux/modules/SingupSlice" ;
5
5
import Label from "../layout/Label" ;
6
6
import LoginSignupInputBox from "../layout/input/LoginSignupInputBox" ;
7
7
import IsModal from "../modal/Modal" ;
8
8
9
9
const SetProfileName = ( ) => {
10
10
const dispatch = useDispatch ( ) ;
11
11
const navigate = useNavigate ( ) ;
12
- const [ isOpen , setOpen ] = useState ( false ) ;
13
12
const [ ModalStr , setModalStr ] = useState ( {
14
13
modalTitle : "" ,
15
14
modalMessage : "" ,
16
15
} ) ;
17
16
const userNameRef = useRef ( ) ;
18
17
const userNickNameRef = useRef ( ) ;
19
- const [ doubleCheck , setDoubleCheck ] = useState ( {
20
- nickNameDoubleCheck : false ,
21
- } ) ;
18
+
19
+ const { nickNameDoubleCheck } = useSelector ( ( state ) => state . SingupSlice ) ;
22
20
23
21
const [ style , setStyle ] = useState ( {
24
22
bgColorName : "bg-inputBox" ,
@@ -34,7 +32,7 @@ const SetProfileName = () => {
34
32
) {
35
33
navigate ( "/signup/setProfileImg" ) ;
36
34
}
37
- } , [ dispatch , doubleCheck , navigate ] ) ;
35
+ } , [ dispatch , navigate ] ) ;
38
36
39
37
const nameRegulationExp = / ^ [ ㄱ - ㅎ | 가 - 힣 | a - z | A - Z | ] + $ / ;
40
38
const nickNameReglationExp = / ^ (? = .* [ a - z 0 - 9 가 - 힣 ] ) [ a - z 0 - 9 가 - 힣 ] { 2 , 8 } $ / ;
@@ -96,11 +94,9 @@ const SetProfileName = () => {
96
94
} ;
97
95
98
96
//모달창
99
- const onModalOpen = ( ) => {
100
- setOpen ( { isOpen : true } ) ;
101
- } ;
102
97
const onMoalClose = ( ) => {
103
- setOpen ( { isOpen : false } ) ;
98
+ console . log ( "닫기 동족하나?" ) ;
99
+ dispatch ( __closeModal ( dispatch ) ) ;
104
100
} ;
105
101
106
102
const onNickNameCheck = ( event ) => {
@@ -117,10 +113,7 @@ const SetProfileName = () => {
117
113
dispatch (
118
114
__nickNameCheck ( {
119
115
nickname : nickNameCurrent . value ,
120
- onModalOpen,
121
116
setModalStr,
122
- doubleCheck : doubleCheck ,
123
- setDoubleCheck : setDoubleCheck ,
124
117
} )
125
118
) ;
126
119
} ;
@@ -160,7 +153,7 @@ const SetProfileName = () => {
160
153
} ) ) ;
161
154
userNickNameCurrent . focus ( ) ;
162
155
return ;
163
- } else if ( ! doubleCheck ) {
156
+ } else if ( ! nickNameDoubleCheck ) {
164
157
SetRegulation ( ( ) => ( {
165
158
...regulation ,
166
159
regulationNickName : "닉네임 중복확인 해주세요." ,
@@ -224,8 +217,10 @@ const SetProfileName = () => {
224
217
ref = { userNickNameRef }
225
218
placeholder = "2~8자리 숫자,한글,영문을 입력해주세요."
226
219
onChange = { onValidity }
220
+ maxLength = { 8 }
227
221
className = { `${ style . bgColorNickname } ${ style . shadowNickname } w-full px-1 h-[50px] text-[16px] placeholder-inputPlaceHoldText` }
228
- disabled = { doubleCheck . nickNameDoubleCheck }
222
+ disabled = { nickNameDoubleCheck }
223
+ autoComplete = "off"
229
224
> </ input >
230
225
< button
231
226
className = "absolute right-[8px] mt-[18px] font-[600] text-textBlack text-[16px]"
@@ -249,11 +244,7 @@ const SetProfileName = () => {
249
244
</ button >
250
245
</ div >
251
246
</ form >
252
- < IsModal
253
- isModalOpen = { isOpen . isOpen }
254
- onMoalClose = { onMoalClose }
255
- message = { { ModalStr } }
256
- />
247
+ < IsModal onMoalClose = { onMoalClose } message = { { ModalStr } } />
257
248
</ div >
258
249
</ >
259
250
) ;
0 commit comments