I created a Link with state
prop in Gatsby App.
<code><Link
to={`/blog`}
state={{ data: {data}}}
>
MyLink
</Link>
</code>
<code><Link
to={`/blog`}
state={{ data: {data}}}
>
MyLink
</Link>
</code>
<Link
to={`/blog`}
state={{ data: {data}}}
>
MyLink
</Link>
In my blog
site I refer to the data
value:
<code>const [data, setData] = useState(props.location.state?.data.data);
</code>
<code>const [data, setData] = useState(props.location.state?.data.data);
</code>
const [data, setData] = useState(props.location.state?.data.data);
After opening this link on a new tab, I loose the data prop value in my blog
site-> data
value is null
If I click on that Link in the same tab, it works fine.
How can I implement a solution to work in both cases?
Using window.history.state
instead of state
prop in my blog
site didn’t work for me, too.
<code>if (typeof window !== `undefined`) {
const [data, setData] = useState(window.history.state.data);
}
</code>
<code>if (typeof window !== `undefined`) {
const [data, setData] = useState(window.history.state.data);
}
</code>
if (typeof window !== `undefined`) {
const [data, setData] = useState(window.history.state.data);
}
New contributor
gat987 is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.