diff options
Diffstat (limited to 'src/components')
-rw-r--r-- | src/components/Login.js | 43 | ||||
-rw-r--r-- | src/components/MyComponent.js | 7 |
2 files changed, 50 insertions, 0 deletions
diff --git a/src/components/Login.js b/src/components/Login.js new file mode 100644 index 0000000..620ece0 --- /dev/null +++ b/src/components/Login.js @@ -0,0 +1,43 @@ +import React, { useState } from 'react'; +import axios from 'axios'; + +function Login() { + const [username, setUsername] = useState(''); + const [password, setPassword] = useState(''); + const [error, setError] = useState(''); + + const handleSubmit = async (event) => { + event.preventDefault(); + try { + const response = await axios.post('http://localhost:5000/login', { + username, + password, + }); + console.log(response.data); + // handle successful login, e.g., redirect to admin panel + } catch (error) { + setError('Invalid credentialas'); + console.error('Error logging in', error); + } + }; + + return ( + <div className="Login"> + <h2>Login</h2> + {error && <p style={{ color: 'red' }}>{error}</p>} + <form onSubmit={handleSubmit}> + <div> + <lable>Username:</lable> + <input type="text" value={username} onChange={(e) => setUsername(e.target.value)} required /> + </div> + <div> + <lable>Password:</lable> + <input type="password" value={password} onChange={(e) => setPassword(e.target.value)} required /> + </div> + <button type="submit">Login</button> + </form> + </div> + ); +} + +export default Login;
\ No newline at end of file diff --git a/src/components/MyComponent.js b/src/components/MyComponent.js new file mode 100644 index 0000000..b9434ea --- /dev/null +++ b/src/components/MyComponent.js @@ -0,0 +1,7 @@ +import React from 'react'; + +function MyComponent() { + return <div>This is my component!</div>; +} + +export default MyComponent;
\ No newline at end of file |