Toggle navigation
Toggle navigation
This project
Loading...
Sign in
강동현
/
nodejs-game
Go to a project
Toggle navigation
Toggle navigation pinning
Projects
Groups
Snippets
Help
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Snippets
Network
Create a new issue
Builds
Commits
Issue Boards
Authored by
Overnap
2021-05-26 20:10:24 +0900
Browse Files
Options
Browse Files
Download
Email Patches
Plain Diff
Commit
e093f52464d0dddbb904047029cd0ceacfb6dec9
e093f524
1 parent
83649779
(WIP) 로그인 컴포넌트 구현
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
42 additions
and
0 deletions
web/src/Login.tsx
web/src/Login.tsx
0 → 100644
View file @
e093f52
import React, { useContext, useState } from 'react';
import { RouteComponentProps } from 'react-router';
import SocketContext from './SocketContext';
export const Login: React.FC<RouteComponentProps> = ({ history }) => {
const socket = useContext(SocketContext);
const [ username, setUsername ] = useState("");
const login = () => {
socket.emit('LoginMessage', username, ({ ok } : { ok: boolean }) => {
if (ok) {
history.push('/rooms');
} else {
console.error('login error!'); // TODO: 팝업 에러?
}
});
}
return (
<div>
<header>Header</header>
<div className="flex items-center">
<input type="text"
placeholder="Username"
className="px-3 py-2 bg-white
placeholder-gray-300 text-gray-700 text-sm
rounded shadow outline-none focus:outline-none"
value={username}
onChange={e => setUsername(e.target.value)}
/>
<button className="bg-green-500 active:bg-green-600
text-white font-bold uppercase text-sm
px-5 py-2 ml-3 rounded shadow hover:shadow-lg
outline-none focus:outline-none
ease-linear transition-all duration-150"
type="button"
onClick={() => login()}>Login</button>
</div>
<footer>Footer</footer>
</div>
)
}
Please
register
or
login
to post a comment