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
messenger
Commits
db5383e3
Commit
db5383e3
authored
Jan 18, 2021
by
Choi Ga Young
Browse files
채팅방(x)
parent
645bf09c
Changes
6
Show whitespace changes
Inline
Side-by-side
client/src/Components/ClosedList.js
View file @
db5383e3
import
React
,
{
useState
}
from
'
react
'
import
React
,
{
useState
,
useEffect
}
from
'
react
'
import
{
ListGroup
,
Row
,
Col
}
from
'
react-bootstrap
'
;
import
{
ListGroup
,
Row
,
Col
}
from
'
react-bootstrap
'
;
import
axios
from
'
axios
'
function
ClosedList
(
props
)
{
function
ClosedList
(
props
)
{
const
[
list
,
setList
]
=
useState
([
const
[
list
,
setList
]
=
useState
([]);
{
room
:
'
테스트 방1
'
,
memnum
:
5
,
admin
:
'
가영
'
},
{
room
:
'
테스트 방2
'
,
memnum
:
4
,
admin
:
'
수현
'
}]
useEffect
(()
=>
{
);
getClosedList
();
},
[]);
async
function
getClosedList
()
{
let
res
=
await
axios
.
get
(
'
/room/closedlist
'
)
console
.
log
(
'
가져온거
'
,
res
)
setList
(
res
.
data
)
}
function
enterChatroomCH
(
e
)
{
function
enterChatroomCH
(
e
)
{
console
.
log
(
e
.
target
.
name
)
console
.
log
(
e
.
target
.
name
)
...
@@ -20,8 +28,8 @@ function ClosedList(props) {
...
@@ -20,8 +28,8 @@ function ClosedList(props) {
<
div
>
<
div
>
{
list
.
map
((
item
,
index
)
=>
{
list
.
map
((
item
,
index
)
=>
<
ListGroup
key
=
{
index
}
>
<
ListGroup
key
=
{
index
}
>
<
ListGroup
.
Item
action
onClick
=
{
enterChatroomCH
}
name
=
{
item
.
room
}
>
<
ListGroup
.
Item
action
onClick
=
{
enterChatroomCH
}
name
=
{
item
.
room
Name
}
>
{
item
.
room
}
{
item
.
room
Name
}
<
/ListGroup.Item
>
<
/ListGroup.Item
>
<
/ListGroup
>
<
/ListGroup
>
)}
)}
...
...
client/src/Pages/HomePage.js
View file @
db5383e3
...
@@ -80,6 +80,8 @@ function Home() {
...
@@ -80,6 +80,8 @@ function Home() {
})
})
},
[
singleChat
])
},
[
singleChat
])
return
(
return
(
<>
<>
<
Menu
/>
<
Menu
/>
...
...
server/controllers/room.controller.js
View file @
db5383e3
...
@@ -19,7 +19,7 @@ const makeRoom = async (req, res) => {
...
@@ -19,7 +19,7 @@ const makeRoom = async (req, res) => {
try
{
try
{
if
(
!
isLength
(
roomName
,
{
min
:
3
,
max
:
20
}))
{
if
(
!
isLength
(
roomName
,
{
min
:
3
,
max
:
20
}))
{
return
res
.
status
(
422
).
send
(
'
채팅방의 이름은 3-20자여야 합니다.
'
)
return
res
.
status
(
422
).
send
(
'
채팅방의 이름은 3-20자여야 합니다.
'
)
}
else
if
(
interest
==
'
Choose...
'
||
interest
==
''
){
}
else
if
(
interest
==
'
Choose...
'
||
interest
==
''
)
{
return
res
.
status
(
422
).
send
(
'
분야를 반드시 선택하여야 합니다.
'
)
return
res
.
status
(
422
).
send
(
'
분야를 반드시 선택하여야 합니다.
'
)
}
}
const
newRoom
=
await
new
Room
({
const
newRoom
=
await
new
Room
({
...
@@ -36,4 +36,14 @@ const makeRoom = async (req, res) => {
...
@@ -36,4 +36,14 @@ const makeRoom = async (req, res) => {
}
}
}
}
export
default
{
makeRoom
}
const
getClosedList
=
async
(
req
,
res
)
=>
{
\ No newline at end of file
try
{
let
list
=
await
Room
.
find
({
isOpen
:
false
})
console
.
log
(
'
list가져오기
'
,
list
)
return
res
.
json
(
list
)
}
catch
(
error
)
{
res
.
status
(
500
).
send
(
'
리스트 불러오기를 실패하였습니다!
'
)
}
}
export
default
{
makeRoom
,
getClosedList
}
\ No newline at end of file
server/controllers/user.controller.js
View file @
db5383e3
...
@@ -2,8 +2,7 @@ import User from "../models/User.js"
...
@@ -2,8 +2,7 @@ import User from "../models/User.js"
import
isLength
from
'
validator/lib/isLength.js
'
import
isLength
from
'
validator/lib/isLength.js
'
import
isEmail
from
'
validator/lib/isEmail.js
'
import
isEmail
from
'
validator/lib/isEmail.js
'
import
bcrypt
from
"
bcryptjs
"
;
import
bcrypt
from
"
bcryptjs
"
;
import
jwt
from
'
jsonwebtoken
'
import
config
from
"
../config.js
"
const
signup
=
async
(
req
,
res
)
=>
{
const
signup
=
async
(
req
,
res
)
=>
{
...
@@ -43,10 +42,7 @@ const signup = async (req, res) => {
...
@@ -43,10 +42,7 @@ const signup = async (req, res) => {
res
.
status
(
500
).
send
(
'
회원가입 에러발생하였습니다.
'
)
res
.
status
(
500
).
send
(
'
회원가입 에러발생하였습니다.
'
)
}
}
}
}
const
hello
=
async
(
req
,
res
)
=>
{
let
users
=
await
User
.
find
().
select
(
'
name nickname email _id
'
).
exec
()
return
res
.
json
(
users
)
}
const
logineduser
=
async
(
req
,
res
)
=>
{
const
logineduser
=
async
(
req
,
res
)
=>
{
try
{
try
{
...
@@ -59,12 +55,12 @@ const logineduser = async (req, res) => {
...
@@ -59,12 +55,12 @@ const logineduser = async (req, res) => {
const
changenick
=
async
(
req
,
res
)
=>
{
const
changenick
=
async
(
req
,
res
)
=>
{
try
{
try
{
const
newnick
=
req
.
body
.
nickname
const
newnick
=
req
.
body
.
nickname
await
User
.
update
({
'
username
'
:
req
.
body
.
username
},
{
'
nickname
'
:
newnick
})
await
User
.
update
One
({
'
username
'
:
req
.
body
.
username
},
{
'
nickname
'
:
newnick
})
}
catch
(
error
)
{
}
catch
(
error
)
{
alert
(
'
올바르지 못한 접근입니다.
'
)
alert
(
'
올바르지 못한 접근입니다.
'
)
}
}
}
}
export
default
{
signup
,
hello
,
logineduser
,
changenick
}
export
default
{
signup
,
logineduser
,
changenick
}
// {} : 객체로 return함
// {} : 객체로 return함
\ No newline at end of file
server/routes/room.routers.js
View file @
db5383e3
...
@@ -5,4 +5,7 @@ const router = express.Router()
...
@@ -5,4 +5,7 @@ const router = express.Router()
router
.
route
(
'
/room/makeRoom
'
)
router
.
route
(
'
/room/makeRoom
'
)
.
post
(
roomCtrl
.
makeRoom
)
.
post
(
roomCtrl
.
makeRoom
)
router
.
route
(
'
/room/closedlist
'
)
.
get
(
roomCtrl
.
getClosedList
)
export
default
router
export
default
router
\ No newline at end of file
server/routes/user.routes.js
View file @
db5383e3
...
@@ -6,7 +6,6 @@ const router = express.Router()
...
@@ -6,7 +6,6 @@ const router = express.Router()
router
.
route
(
'
/users/signup
'
)
router
.
route
(
'
/users/signup
'
)
.
post
(
userCtrl
.
signup
)
.
post
(
userCtrl
.
signup
)
.
get
(
userCtrl
.
hello
)
router
.
route
(
`/users/:userId`
)
router
.
route
(
`/users/:userId`
)
.
post
(
userCtrl
.
logineduser
)
.
post
(
userCtrl
.
logineduser
)
...
...
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