Maybe don't navigate(-1) in Remix/React-Router


Hey y'all,

David here. You signed up for my newsletter at programmingarehard.com.

I'm writing to let you know I've just published a new post about avoiding `navigate(-1)`, or navigating back in the history stack. `navigate(-1)` is really easy to use but comes with some wonky behavior. You'll learn how to properly do "back" links in your application by checking out my latest post.

Maybe don't navigate(-1) in Remix/React Router

Hope you find it useful and have an awesome Tuesday. ✌️

David

ProgrammingAreHard

For developers looking to learn useful tips and tricks.

Read more from ProgrammingAreHard

React Router Tip Debounce Requests in React Router v7 Have you ever implemented a search input filter for table or grid of data in your app that needs to initiate fetching new, filtered, data? If you want to initiate the requests as the user changes the filter value without having to manually click a submit button you likely want to debounce those requests. Do you use a debounce hook and resort to useEffect to kick of requests?? No! There's a much easier way that doesn't involve adding a...

Hey y'all, David here. You signed up for my newsletter at programmingarehard.com. I'm super jazzed about what I have for you today! One of the inherent benefits of Single Page Apps(SPAs) I took for granted was the logging that comes out of the box via the Network tab in the console. Every api request happens in the browser and you can easily inspect those which is super handy. Once you move to something like Remix/React Router 7, you become painfully aware that you've lost access to that...

Hey y'all, David here. You signed up for my newsletter at programmingarehard.com. Sometimes I have ideas I want to test out in my Remix / React Router apps. But.... I don't want the overhead of doing it in my actual apps or, on the opposite end of the spectrum, want to start from a blank slate. I found the address book tutorial and thought that surely the end result was published somewhere. Not the case. So I went ahead and bit the bullet by going through it and pushing the end result to a...