in signup directory there is two file name signup.jsx and styles.css i import css file in my jsx file import styles from "./styles.css"; but it doesn't load on browser.
this is signup.jsx
import { useState } from "react";
import axios from "axios";
import { Link, useNavigate } from "react-router-dom";
import styles from "./styles.css";
const Signup = () => {
const [data, setData] = useState({
firstName: "",
lastName: "",
email: "",
password: "",
});
const [error, setError] = useState("");
const navigate = useNavigate();
const handleChange = ({ currentTarget: input }) => {
setData({ ...data, [input.name]: input.value });
};
const handleSubmit = async (e) => {
e.preventDefault();
try {
const url = "http://localhost:5000/api/signup";
const { data: res } = await axios.post(url, data);
navigate("/login");
console.log(res.message);
} catch (error) {
if (
error.response &&
error.response.status >= 400 &&
error.response.status <= 500
) {
setError(error.response.data.message);
}
}
};
return (
<div className={styles.signup_container}>
<div className={styles.signup_form_container}>
<div className={styles.left}>
<h1>Welcome Back</h1>
<Link to="/login">
<button type="button" className={styles.white_btn}>
Sing in
</button>
</Link>
</div>
<div className={styles.right}>
<form className={styles.form_container} onSubmit={handleSubmit}>
<h1>Create Account</h1>
<input
type="text"
placeholder="voter_id"
name="voter_id"
onChange={handleChange}
value={data.voter_id}
required
className={styles.input}
/>
<input
type="password"
placeholder="password"
name="password"
onChange={handleChange}
value={data.password}
required
className={styles.input}
/>
<input
type="password_confirmation"
placeholder="password_confirmation"
name="password_confirmation"
onChange={handleChange}
value={data.password_confirmation}
required
className={styles.input}
/>
{error && <div className={styles.error_msg}>{error}</div>}
<button type="submit" className={styles.green_btn}>
Sing Up
</button>
</form>
</div>
</div>
</div>
);
};
export default Signup;
this is styles.css
.signup_container {
width: 100%;
min-height: 100vh;
background-color: #f5f5f5;
display: flex;
align-items: center;
justify-content: center;
}
.signup_form_container {
width: 900px;
height: 500px;
display: flex;
border-radius: 10px;
box-shadow: 0px 3px 3px -2px rgb(0 0 0 / 20%),
0px 3px 4px 0px rgb(0 0 0 / 14%), 0px 1px 8px 0px rgb(0 0 0 / 12%);
}
.left {
flex: 1;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
background-color: #3bb19b;
border-top-left-radius: 10px;
border-bottom-left-radius: 10px;
}
.left h1 {
margin-top: 0;
color: white;
font-size: 35px;
align-self: center;
}
.right {
flex: 2;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
background-color: white;
border-top-right-radius: 10px;
border-bottom-right-radius: 10px;
}
.form_container {
display: flex;
flex-direction: column;
align-items: center;
}
.form_container h1 {
font-size: 40px;
margin-top: 0;
}
.input {
outline: none;
border: none;
width: 370px;
padding: 15px;
border-radius: 10px;
background-color: #edf5f3;
margin: 5px 0;
font-size: 14px;
}
.error_msg {
width: 370px;
padding: 15px;
margin: 5px 0;
font-size: 14px;
background-color: #f34646;
color: white;
border-radius: 5px;
text-align: center;
}
.white_btn,
.green_btn {
border: none;
outline: none;
padding: 12px 0;
background-color: white;
border-radius: 20px;
width: 180px;
font-weight: bold;
font-size: 14px;
cursor: pointer;
}
.green_btn {
background-color: #3bb19b;
color: white;
margin: 10px;
}
this is dir structure
this is unexpected output
[output][1]: https://i.sstatic.net/TR1Ro.png