when i signup user gets created to auth and user added as document in user collection (saved to db) but it is not redirected to / (home) route
async function handleSignup(values: z.infer<typeof formSchema>) {
try {
const newUser =await createUserAccount(values);
if(newUser){
return toast({
title: 'Sign up failed! Please try again.'
})
}
const session = await signInAccount({
email:values.email,
password:values.password
})
if(!session) {
toast({title:"sign in failed, Please try again."})
navigate("/sign-in");
return;
}
const isLoggedIn=await checkAuthUser();
if(isLoggedIn){
form.reset()
navigate('/')
}else{
toast({title:"Sign up failed! Please try again"})
return;
}
} catch (error) {
console.log(error);
}
my handleSignup function
I think the issue is that you're not routing after createUserAccount?
but i have to navigate to / only when it is signedin
Ok. Let me do a rewrite
i followed a tutorial and did almost exactly as he did but still getting messed up
What's exactly createUserAccount(values);?
This is JS, right?
Ts
Okay. What's the code for such function?
I mean createUserAccount(values);
values: { username: string; email: string; name: string; password: string; }
try {
const newAccount = await account.create(
ID.unique(),
user.email,
user.password,
user.name
);
if (!newAccount) throw Error;
const avatarUrl = avatars.getInitials(user.name);
const newUser = await saveUserToDB({
accountId: newAccount.$id,
name: newAccount.name,
email: newAccount.email,
username: user.username,
imageUrl: avatarUrl,
});
return newUser;
} catch (error) {
console.log(error);
return error;
}
}
export async function saveUserToDB(user: {
accountId: string;
email: string;
name: string;
imageUrl: URL;
username?: string;
}) {
try {
const newUser = await databases.createDocument(
appwriteConfig.databaseId,
appwriteConfig.userCollectionId,
ID.unique(),
user
);
console.log(newUser);
return newUser;
} catch (error) {
console.log(error);
}
}```
Ok. That looks fine for me
I think the first part should look like this?
const newUser = await createUserAccount(values);
if(newUser){
// Redirect the user here since it has been logged in:
navigate('/')
} else {
//Show errors here
}
Recommended threads
- Invalid document structure: missing requ...
I just pick up my code that's working a week ago, and now I got this error: ``` code: 400, type: 'document_invalid_structure', response: { message: 'Inv...
- Error: User (role: guests) missing scope...
I want to send a verification code to the user and the given phone number and check it and create a session right after the user entered the secret. For me that...
- Apple OAuth Scopes
Hi Hi, I've configured sign in with apple and this is the response i'm getting from apple once i've signed in. I cant find anywhere I set scopes. I remember se...