const instance = axios.create({
baseURL: "<https://pre-onboarding-selection-task.shop>",
});
const accessToken = localStorage.getItem("access_token");
instance.defaults.headers.common["Authorization"] = accessToken
? `Bearer ${accessToken}`
: null;
-----
const [email, setEmail] = useState<string>("");
const [password, setPassword] = useState<string>("");
const handleSignin = async () => {
try {
const { data } = await instance.post("/auth/signin", { email, password });
localStorage.setItem("access_token", data.access_token);
instance.defaults.headers.common[
"Authorization"
] = `Bearer ${data.access_token}`;
navigate("/todo");
} catch (error) {
console.log(error);
}
};
const [email, setEmail] = useState<string>("");
const [password, setPassword] = useState<string>("");
const handleSignup = async () => {
try {
await instance.post("/auth/signup", { email, password });
navigate("/signin");
} catch (error) {
console.log(error);
}
};
const [todo, setTodo] = useState<string>("");
const [todos, setTodos] = useState<TodoType[]>();
const createTodo = async (e: React.ChangeEvent<HTMLInputElement>) => {
e.preventDefault();
if (todo === "") return;
try {
await instance.post("/todos", {
todo,
});
getAndUpdateTodos();
setTodo("");
} catch (error) {
console.log(error);
}
};
갱신하는 함수