In my router, I need to do the following:
if (props.location.pathname !== '/confirm') {
// redirect to /confirm to force the user to confirm their email
}
The if statement is not acting as expected.
If I output:
console.log(props.location.pathname)
I get in the console.
/confirm
However, props.location.pathname
with the value of '/confirm' is not being seen as the same as /confirm
What am I doing wrong?
In my router, I need to do the following:
if (props.location.pathname !== '/confirm') {
// redirect to /confirm to force the user to confirm their email
}
The if statement is not acting as expected.
If I output:
console.log(props.location.pathname)
I get in the console.
/confirm
However, props.location.pathname
with the value of '/confirm' is not being seen as the same as /confirm
What am I doing wrong?
typeof props.location.pathname
? Strict parison a !== b
is true if types are different.
– Yury Tarabanko
Commented
Jul 4, 2017 at 17:13
typeof props.location.pathname
returns string
– AnnaSm
Commented
Jul 4, 2017 at 17:32
props.location.pathname !== '/confirm'
. Make sure you don't have some space or special character in "/confirm".
– Yury Tarabanko
Commented
Jul 4, 2017 at 17:35
To pare two strings in React.js, you can simply use triple-equals (or ===) as below:
if (stringTemp === 'desired string'){
console.log('Equal');
}
type of both the operands should be same while using == for parision.Make sure both are of string type or change if to
if (props.location.pathname != '/confirm') {
// redirect to /confirm to force the user to confirm their email
}