Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
students
butter-studio
Commits
398e482d
Commit
398e482d
authored
Jul 12, 2021
by
한규민
Browse files
signup
parent
d998c4b0
Changes
2
Hide whitespace changes
Inline
Side-by-side
client/src/components/Signup/Signup.js
View file @
398e482d
...
...
@@ -11,7 +11,9 @@ const Signup = () => {
userPassword
:
''
,
userRePassword
:
''
,
})
// 비밀번호와 비밀번호 확인 일치여부, 중복확인 창
const
[
passwordError
,
setPasswordError
]
=
useState
(
false
);
const
[
overlapId
,
setOverlapIdError
]
=
useState
(
false
);
const
handleUserOnChange
=
(
e
)
=>
{
setUserState
({
...
...
@@ -22,23 +24,30 @@ const Signup = () => {
setPasswordError
(
e
.
target
.
value
!==
userText
.
userPassword
);
}}
//중복되었으면 중복확인 창 띄우는 여부를 state에 전달
const
handleOverlapIdError
=
(
e
)
=>
{
e
.
preventDefault
();
setOverlapIdError
(
true
);
}
//가입완료 누르면 콘솔창에 전달하려는 state 보여줌
const
onSubmit
=
(
e
)
=>
{
e
.
preventDefault
();
if
(
userText
.
userPassword
!==
userText
.
userRePassword
){
return
setPasswordError
(
true
);
}
console
.
log
(
userText
);
console
.
log
(
userText
)
}
return
(
<
form
className
=
{
`d-flex col-md-6 col-12 justify-content-center`
}
>
<
div
className
=
"
d-flex flex-column
"
>
<
div
className
=
{
styles
.
inputContent
}
>
<
label
className
=
{
styles
.
signupLabel
}
>
아이디
<
/label
>
<
div
className
=
"
d-flex col-md-auto
"
>
<
input
className
=
{
styles
.
input
}
type
=
"
text
"
name
=
"
userID
"
id
=
"
userID
"
placeholder
=
"
8자리입력
"
onChange
=
{
handleUserOnChange
}
maxLength
=
"
8
"
minlength
=
"
8
"
required
/>
<
button
type
=
"
button
"
className
=
{
`rounded-2 mt-2
${
styles
.
butterYellowAndBtn
}
${
styles
.
btnHover
}
`
}
data
-
bs
-
toggle
=
"
modal
"
data
-
bs
-
target
=
"
#exampleModal
"
>
중복확인
<
/button
>
<
/div
>
<
span
className
=
{
styles
.
title
}
>
회원가입
<
/span
>
<
div
className
=
"
d-flex flex-column
"
>
<
div
className
=
{
styles
.
inputContent
}
>
<
label
className
=
{
styles
.
signupLabel
}
>
아이디
<
/label
>
<
div
className
=
"
d-flex col-md-auto
"
>
<
input
className
=
{
styles
.
input
}
type
=
"
text
"
name
=
"
userID
"
id
=
"
userID
"
placeholder
=
"
8자리입력
"
onChange
=
{
handleUserOnChange
}
maxLength
=
"
8
"
minlength
=
"
8
"
required
/>
<
button
type
=
"
button
"
className
=
{
`rounded-2 mt-2
${
styles
.
butterYellowAndBtn
}
${
styles
.
btnHover
}
`
}
onClick
=
{
handleOverlapIdError
}
data
-
bs
-
toggle
=
"
modal
"
data
-
bs
-
target
=
"
#exampleModal
"
>
중복확인
<
/button
>
<
/div
>
<
/div>
{
overlapId
&&
<
p
className
=
{
styles
.
passwordConfirmError
}
>
아이디
중복확인이
되었습니다
.
<
/p>
}
<
/div
>
<
div
className
=
{
styles
.
inputContent
}
>
<
label
className
=
{
styles
.
signupLabel
}
>
별명
<
/label
>
...
...
@@ -54,17 +63,17 @@ const Signup = () => {
<
/div
>
<
div
className
=
{
`
${
styles
.
inputContent
}
`
}
>
<
label
className
=
{
styles
.
signupLabel
}
>
비밀번호
<
/label
>
<
input
className
=
{
`
${
styles
.
input
}
${
styles
.
inputSize
}
`
}
type
=
"
text
"
name
=
"
userPassword
"
id
=
"
password
"
placeholder
=
"
8자리 입력
"
onChange
=
{
handleUserOnChange
}
maxLength
=
"
8
"
minlength
=
"
8
"
required
/>
<
input
className
=
{
`
${
styles
.
input
}
${
styles
.
inputSize
}
`
}
type
=
"
password
"
name
=
"
userPassword
"
id
=
"
password
"
placeholder
=
"
8자리 입력
"
onChange
=
{
handleUserOnChange
}
maxLength
=
"
8
"
minlength
=
"
8
"
required
/>
<
/div
>
<
div
className
=
"
d-flex flex-column
"
>
<
div
className
=
{
styles
.
inputContent
}
>
<
label
className
=
{
styles
.
signupLabel
}
>
비밀번호
확인
<
/label
>
<
input
className
=
{
`
${
styles
.
input
}
${
styles
.
inputSize
}
`
}
type
=
"
text
"
name
=
"
userRePassword
"
id
=
"
userRePassword
"
placeholder
=
"
8자리 입력
"
onChange
=
{
handleUserOnChange
}
maxLength
=
"
8
"
minlength
=
"
8
"
required
/>
<
input
className
=
{
`
${
styles
.
input
}
${
styles
.
inputSize
}
`
}
type
=
"
password
"
name
=
"
userRePassword
"
id
=
"
userRePassword
"
placeholder
=
"
8자리 입력
"
onChange
=
{
handleUserOnChange
}
maxLength
=
"
8
"
minlength
=
"
8
"
required
/>
<
/div
>
{
passwordError
&&
<
p
className
=
{
styles
.
passwordConfirmError
}
>
비밀번호가
일치하지
않습니다
.
<
/p>
}
<
/div
>
<
input
className
=
{
`rounded-
1
my-3 py-2
${
styles
.
butterYellowAndBtn
}
${
styles
.
btnHover
}
`
}
type
=
"
submit
"
value
=
"
가입하기
"
onClick
=
{
onSubmit
}
/
>
<
buttom
type
=
"
button
"
className
=
{
`rounded- my-3 py-2
fs-5
${
styles
.
butterYellowAndBtn
}
${
styles
.
btnHover
}
`
}
type
=
"
submit
"
onClick
=
{
onSubmit
}
data
-
bs
-
toggle
=
"
modal
"
data
-
bs
-
target
=
"
#exampleModal2
"
>
가입하기
<
/buttom
>
<
/div
>
{
/* 아이디 중복 확인 모달창 */
}
...
...
@@ -73,7 +82,6 @@ const Signup = () => {
<
div
class
=
"
modal-content
"
>
<
div
class
=
"
modal-header
"
>
<
h5
class
=
"
modal-title
"
id
=
"
exampleModalLabel
"
>
아이디
중복
확인
<
/h5
>
<
button
type
=
"
button
"
class
=
"
btn-close
"
data
-
bs
-
dismiss
=
"
modal
"
aria
-
label
=
"
Close
"
><
/button
>
<
/div
>
<
div
class
=
"
modal-body
"
>
이
아이디는
사용가능합니다
.
...
...
@@ -84,6 +92,23 @@ const Signup = () => {
<
/div
>
<
/div
>
<
/div
>
{
/* 회원가입 완료 모달창 */
}
<
div
class
=
"
modal fade
"
id
=
"
exampleModal2
"
tabindex
=
"
-1
"
aria
-
labelledby
=
"
exampleModalLabel
"
aria
-
hidden
=
"
true
"
>
<
div
class
=
"
modal-dialog
"
>
<
div
class
=
"
modal-content
"
>
<
div
class
=
"
modal-header
"
>
<
h5
class
=
"
modal-title
"
id
=
"
exampleModalLabel
"
>
회원가입
<
/h5
>
<
/div
>
<
div
class
=
"
modal-body
"
>
회원가입이
완료되었습니다
.
<
/div
>
<
div
class
=
"
modal-footer
"
>
<
button
type
=
"
button
"
className
=
"
btn btn-secondary
"
data
-
bs
-
dismiss
=
"
modal
"
>
닫기
<
/button
>
<
/div
>
<
/div
>
<
/div
>
<
/div
>
<
/form
>
...
...
client/src/components/Signup/signup.module.scss
View file @
398e482d
.title
{
display
:
flex
;
justify-content
:
center
;
color
:
#FEDC00
;
font-size
:
25px
;
margin-top
:
20px
;
}
.contents
{
display
:
flex
;
width
:
100%
;
...
...
@@ -8,6 +16,7 @@
.signupLabel
{
color
:
white
;
padding-right
:
8px
;
text-align
:
left
;
}
.inputContent
{
...
...
@@ -19,11 +28,19 @@
.input
{
margin
:
0
.5rem
0
0
0
;
padding
:
0
.5rem
0
0
.5rem
0
;
color
:black
;
border-radius
:
3px
;
text-align
:
center
;
}
input
[
type
=
password
]
{
font-family
:
'Courier New'
,
Courier
,
monospace
;
}
input
:
:
placeholder
{
font-family
:
'HangeulNuriB'
}
.inputSize
{
width
:
15
.3rem
;
}
...
...
@@ -37,6 +54,7 @@ input[type="number"]::-webkit-inner-spin-button {
color
:
black
;
background-color
:
#FEDC00
;
border
:
1px
solid
black
;
text-align
:
center
;
}
.btnHover
:hover
{
...
...
@@ -44,6 +62,7 @@ background-color: black;
color
:
#FEDC00
;
transition
:
ease-out
;
border
:
1px
solid
white
;
text-align
:
center
;
}
.btnHover
:focus
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment