by Sai gowtham

Getting the current route path in Gatsby

In this tutorial, we are going to learn about how to get the current route path from a URL in Gatsby.

Gatsby uses the @react/router package behind the scenes to handle the routes, which passes a location object to the all routes we created inside the pages directory, which is holding the details about the current route we are in.

Consider, we have the following route in our gatsby app.

localhost:8000/about

To get the route path from an above URL, we need to use the props.location.pathname property inside the About component.

pages/about.js
import React from "react";

export default function About(props) {
  const { location } = props;
  const pathname = location.pathname;
  return (
    <div>
      <h1>This About Page</h1>
      <p>{pathname}</p> // path is /about    </div>
  );
}

Top Udemy Courses

JavaScript - The Complete Guide 2020 (Beginner + Advanced)
JavaScript - The Complete Guide 2020 (Beginner + Advanced)
45,614 students enrolled
52 hours of video content
View Course
React - The Complete Guide (incl Hooks, React Router, Redux)
React - The Complete Guide (incl Hooks, React Router, Redux)
284,472 students enrolled
40 hours of video content
View Course
Vue JS 2 - The Complete Guide (incl. Vue Router & Vuex)
Vue JS 2 - The Complete Guide (incl. Vue Router & Vuex)
130,921 students enrolled
21 hours of video content
View Course