React Firebase redirection
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty{ height:90px;width:728px;box-sizing:border-box;
}
When the user is logged in or sign up I want to redirect to the dashboard page
In this case, I'm getting the console that user has signed in or up but the page is not going to dashboard
import { BrowserRouter as Router, Link, Redirect } from "react-router-dom";
//in signin.js
login = e => {
const { email, password } = this.state;
const { router } = this.props;
e.preventDefault();
auth()
.signInWithEmailAndPassword(email, password)
.then(user => {
if (user) {
console.log('user has signed in or up', user);
return <Redirect to='/profile' />;
} else {
console.log('user signed out or still need to sign in', user);
return <Redirect to='/signIn' />;
}
})
.catch(error => {
console.log(e);
});
};
//in App.js
render() {
return (
<Router>
<Route exact path="/" component={SignIn} />
<Route exact path="/signIn" component={SignIn} />
<Route exact path="/signUp" component={SignUp} />
<AuthorizedRoute exact path="/dashboard" component={Profile} />
</Router>
);
}
In sign up I even don't get console message I think it's not necessary to check in signing up if user exist so how can I do in the sign-up
//in sign up.js
signUp = e => {
const { email, password } = this.state;
e.preventDefault();
auth()
.createUserWithEmailAndPassword(email, password)
.then(user => {
if (user) {
console.log('user has signed in or up', user);
return <Redirect to='/dashboard' />;
} else {
console.log('user signed out or still need to sign in', user);
return <Redirect to='/signIn' />;
}
})
.catch(error => {
console.log(error);
});
};
javascript reactjs firebase routes firebase-authentication
add a comment |
When the user is logged in or sign up I want to redirect to the dashboard page
In this case, I'm getting the console that user has signed in or up but the page is not going to dashboard
import { BrowserRouter as Router, Link, Redirect } from "react-router-dom";
//in signin.js
login = e => {
const { email, password } = this.state;
const { router } = this.props;
e.preventDefault();
auth()
.signInWithEmailAndPassword(email, password)
.then(user => {
if (user) {
console.log('user has signed in or up', user);
return <Redirect to='/profile' />;
} else {
console.log('user signed out or still need to sign in', user);
return <Redirect to='/signIn' />;
}
})
.catch(error => {
console.log(e);
});
};
//in App.js
render() {
return (
<Router>
<Route exact path="/" component={SignIn} />
<Route exact path="/signIn" component={SignIn} />
<Route exact path="/signUp" component={SignUp} />
<AuthorizedRoute exact path="/dashboard" component={Profile} />
</Router>
);
}
In sign up I even don't get console message I think it's not necessary to check in signing up if user exist so how can I do in the sign-up
//in sign up.js
signUp = e => {
const { email, password } = this.state;
e.preventDefault();
auth()
.createUserWithEmailAndPassword(email, password)
.then(user => {
if (user) {
console.log('user has signed in or up', user);
return <Redirect to='/dashboard' />;
} else {
console.log('user signed out or still need to sign in', user);
return <Redirect to='/signIn' />;
}
})
.catch(error => {
console.log(error);
});
};
javascript reactjs firebase routes firebase-authentication
add a comment |
When the user is logged in or sign up I want to redirect to the dashboard page
In this case, I'm getting the console that user has signed in or up but the page is not going to dashboard
import { BrowserRouter as Router, Link, Redirect } from "react-router-dom";
//in signin.js
login = e => {
const { email, password } = this.state;
const { router } = this.props;
e.preventDefault();
auth()
.signInWithEmailAndPassword(email, password)
.then(user => {
if (user) {
console.log('user has signed in or up', user);
return <Redirect to='/profile' />;
} else {
console.log('user signed out or still need to sign in', user);
return <Redirect to='/signIn' />;
}
})
.catch(error => {
console.log(e);
});
};
//in App.js
render() {
return (
<Router>
<Route exact path="/" component={SignIn} />
<Route exact path="/signIn" component={SignIn} />
<Route exact path="/signUp" component={SignUp} />
<AuthorizedRoute exact path="/dashboard" component={Profile} />
</Router>
);
}
In sign up I even don't get console message I think it's not necessary to check in signing up if user exist so how can I do in the sign-up
//in sign up.js
signUp = e => {
const { email, password } = this.state;
e.preventDefault();
auth()
.createUserWithEmailAndPassword(email, password)
.then(user => {
if (user) {
console.log('user has signed in or up', user);
return <Redirect to='/dashboard' />;
} else {
console.log('user signed out or still need to sign in', user);
return <Redirect to='/signIn' />;
}
})
.catch(error => {
console.log(error);
});
};
javascript reactjs firebase routes firebase-authentication
When the user is logged in or sign up I want to redirect to the dashboard page
In this case, I'm getting the console that user has signed in or up but the page is not going to dashboard
import { BrowserRouter as Router, Link, Redirect } from "react-router-dom";
//in signin.js
login = e => {
const { email, password } = this.state;
const { router } = this.props;
e.preventDefault();
auth()
.signInWithEmailAndPassword(email, password)
.then(user => {
if (user) {
console.log('user has signed in or up', user);
return <Redirect to='/profile' />;
} else {
console.log('user signed out or still need to sign in', user);
return <Redirect to='/signIn' />;
}
})
.catch(error => {
console.log(e);
});
};
//in App.js
render() {
return (
<Router>
<Route exact path="/" component={SignIn} />
<Route exact path="/signIn" component={SignIn} />
<Route exact path="/signUp" component={SignUp} />
<AuthorizedRoute exact path="/dashboard" component={Profile} />
</Router>
);
}
In sign up I even don't get console message I think it's not necessary to check in signing up if user exist so how can I do in the sign-up
//in sign up.js
signUp = e => {
const { email, password } = this.state;
e.preventDefault();
auth()
.createUserWithEmailAndPassword(email, password)
.then(user => {
if (user) {
console.log('user has signed in or up', user);
return <Redirect to='/dashboard' />;
} else {
console.log('user signed out or still need to sign in', user);
return <Redirect to='/signIn' />;
}
})
.catch(error => {
console.log(error);
});
};
import { BrowserRouter as Router, Link, Redirect } from "react-router-dom";
//in signin.js
login = e => {
const { email, password } = this.state;
const { router } = this.props;
e.preventDefault();
auth()
.signInWithEmailAndPassword(email, password)
.then(user => {
if (user) {
console.log('user has signed in or up', user);
return <Redirect to='/profile' />;
} else {
console.log('user signed out or still need to sign in', user);
return <Redirect to='/signIn' />;
}
})
.catch(error => {
console.log(e);
});
};
//in App.js
render() {
return (
<Router>
<Route exact path="/" component={SignIn} />
<Route exact path="/signIn" component={SignIn} />
<Route exact path="/signUp" component={SignUp} />
<AuthorizedRoute exact path="/dashboard" component={Profile} />
</Router>
);
}
import { BrowserRouter as Router, Link, Redirect } from "react-router-dom";
//in signin.js
login = e => {
const { email, password } = this.state;
const { router } = this.props;
e.preventDefault();
auth()
.signInWithEmailAndPassword(email, password)
.then(user => {
if (user) {
console.log('user has signed in or up', user);
return <Redirect to='/profile' />;
} else {
console.log('user signed out or still need to sign in', user);
return <Redirect to='/signIn' />;
}
})
.catch(error => {
console.log(e);
});
};
//in App.js
render() {
return (
<Router>
<Route exact path="/" component={SignIn} />
<Route exact path="/signIn" component={SignIn} />
<Route exact path="/signUp" component={SignUp} />
<AuthorizedRoute exact path="/dashboard" component={Profile} />
</Router>
);
}
//in sign up.js
signUp = e => {
const { email, password } = this.state;
e.preventDefault();
auth()
.createUserWithEmailAndPassword(email, password)
.then(user => {
if (user) {
console.log('user has signed in or up', user);
return <Redirect to='/dashboard' />;
} else {
console.log('user signed out or still need to sign in', user);
return <Redirect to='/signIn' />;
}
})
.catch(error => {
console.log(error);
});
};
//in sign up.js
signUp = e => {
const { email, password } = this.state;
e.preventDefault();
auth()
.createUserWithEmailAndPassword(email, password)
.then(user => {
if (user) {
console.log('user has signed in or up', user);
return <Redirect to='/dashboard' />;
} else {
console.log('user signed out or still need to sign in', user);
return <Redirect to='/signIn' />;
}
})
.catch(error => {
console.log(error);
});
};
javascript reactjs firebase routes firebase-authentication
javascript reactjs firebase routes firebase-authentication
edited Nov 16 '18 at 14:11
Frank van Puffelen
245k29389416
245k29389416
asked Nov 16 '18 at 12:24
JohnJohn
205
205
add a comment |
add a comment |
2 Answers
2
active
oldest
votes
What redirection you are using? The code is not clear to answer the question right now.
res.redirect("/user/add");
You can use this method also based on the response.
I'm using react router redirection import { BrowserRouter as Router, Link, Redirect } from "react-router-dom";
– John
Nov 16 '18 at 13:02
add a comment |
From the code provided, after a successful signIn, your Redirect URL should be '/dashboard' rather than '/profile'.
Your signUp function should produce some console output. If it's really not, that would mean the function isn't being (successfully) called.
Rather than using redirection in signing In/Up promises, a better approach is to use a single 'authentication state observer' using onAuthStateChanged
that will respond to your sign In/Up/Out events and redirects accordingly. (See the Firebase guide on this topic: Get Started with Firebase Authentication on Websites) With this observer in place, your signInWithEmailAndPassword
and createUserWithEmailAndPassword
calls need only handle error responses.
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53337876%2freact-firebase-redirection%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
What redirection you are using? The code is not clear to answer the question right now.
res.redirect("/user/add");
You can use this method also based on the response.
I'm using react router redirection import { BrowserRouter as Router, Link, Redirect } from "react-router-dom";
– John
Nov 16 '18 at 13:02
add a comment |
What redirection you are using? The code is not clear to answer the question right now.
res.redirect("/user/add");
You can use this method also based on the response.
I'm using react router redirection import { BrowserRouter as Router, Link, Redirect } from "react-router-dom";
– John
Nov 16 '18 at 13:02
add a comment |
What redirection you are using? The code is not clear to answer the question right now.
res.redirect("/user/add");
You can use this method also based on the response.
What redirection you are using? The code is not clear to answer the question right now.
res.redirect("/user/add");
You can use this method also based on the response.
answered Nov 16 '18 at 12:49
LazyCoderLazyCoder
85
85
I'm using react router redirection import { BrowserRouter as Router, Link, Redirect } from "react-router-dom";
– John
Nov 16 '18 at 13:02
add a comment |
I'm using react router redirection import { BrowserRouter as Router, Link, Redirect } from "react-router-dom";
– John
Nov 16 '18 at 13:02
I'm using react router redirection import { BrowserRouter as Router, Link, Redirect } from "react-router-dom";
– John
Nov 16 '18 at 13:02
I'm using react router redirection import { BrowserRouter as Router, Link, Redirect } from "react-router-dom";
– John
Nov 16 '18 at 13:02
add a comment |
From the code provided, after a successful signIn, your Redirect URL should be '/dashboard' rather than '/profile'.
Your signUp function should produce some console output. If it's really not, that would mean the function isn't being (successfully) called.
Rather than using redirection in signing In/Up promises, a better approach is to use a single 'authentication state observer' using onAuthStateChanged
that will respond to your sign In/Up/Out events and redirects accordingly. (See the Firebase guide on this topic: Get Started with Firebase Authentication on Websites) With this observer in place, your signInWithEmailAndPassword
and createUserWithEmailAndPassword
calls need only handle error responses.
add a comment |
From the code provided, after a successful signIn, your Redirect URL should be '/dashboard' rather than '/profile'.
Your signUp function should produce some console output. If it's really not, that would mean the function isn't being (successfully) called.
Rather than using redirection in signing In/Up promises, a better approach is to use a single 'authentication state observer' using onAuthStateChanged
that will respond to your sign In/Up/Out events and redirects accordingly. (See the Firebase guide on this topic: Get Started with Firebase Authentication on Websites) With this observer in place, your signInWithEmailAndPassword
and createUserWithEmailAndPassword
calls need only handle error responses.
add a comment |
From the code provided, after a successful signIn, your Redirect URL should be '/dashboard' rather than '/profile'.
Your signUp function should produce some console output. If it's really not, that would mean the function isn't being (successfully) called.
Rather than using redirection in signing In/Up promises, a better approach is to use a single 'authentication state observer' using onAuthStateChanged
that will respond to your sign In/Up/Out events and redirects accordingly. (See the Firebase guide on this topic: Get Started with Firebase Authentication on Websites) With this observer in place, your signInWithEmailAndPassword
and createUserWithEmailAndPassword
calls need only handle error responses.
From the code provided, after a successful signIn, your Redirect URL should be '/dashboard' rather than '/profile'.
Your signUp function should produce some console output. If it's really not, that would mean the function isn't being (successfully) called.
Rather than using redirection in signing In/Up promises, a better approach is to use a single 'authentication state observer' using onAuthStateChanged
that will respond to your sign In/Up/Out events and redirects accordingly. (See the Firebase guide on this topic: Get Started with Firebase Authentication on Websites) With this observer in place, your signInWithEmailAndPassword
and createUserWithEmailAndPassword
calls need only handle error responses.
answered Nov 19 '18 at 16:13
MurrayRMurrayR
1
1
add a comment |
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53337876%2freact-firebase-redirection%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown