React Page Transitions With Framer Motion + React Router v6 (2023)

แชร์
ฝัง
  • เผยแพร่เมื่อ 20 ม.ค. 2025

ความคิดเห็น • 119

  • @harrnish
    @harrnish ปีที่แล้ว +17

    Sorry for using CRA like a noob lmao. Built first plain react app from scratch after almost a year or so 💀

  • @PatrickHanford
    @PatrickHanford ปีที่แล้ว +11

    2:58 - 3:11 Spittin' bars.

  • @ilmanmanarulqori5632
    @ilmanmanarulqori5632 ปีที่แล้ว +6

    More usecase with framer motion 🎉🎉🎉

  • @MrAbbo11
    @MrAbbo11 ปีที่แล้ว

    Love your content. So underrated you deserve way more subs.

    • @codegrid
      @codegrid  ปีที่แล้ว

      Glad you think so!

  • @mistersir3185
    @mistersir3185 ปีที่แล้ว +3

    I have to give you props(no pun intended) for sublime music taste you have.

  • @rifat0109
    @rifat0109 ปีที่แล้ว +3

    Please keep making videos with React. We want to learn more about React js and framer Motion .

  • @veedjohnson
    @veedjohnson ปีที่แล้ว

    Codegrid the goat 🐐

  • @petarkolev6928
    @petarkolev6928 ปีที่แล้ว

    Awesome video, mate 🍻🍻

  • @Ivan-Shyriaiev
    @Ivan-Shyriaiev ปีที่แล้ว +5

    Solution for «….expected function/fragment but got JSX… something…..”
    Home.jsx ->
    --
    import Transition from “../Transition”
    function Home(){
    return(
    //Home
    )
    }
    const WrappedHome = Transition(Home)
    export default WrappedHome
    --
    And then just import it in as import Home from “../Home”
    5:55

  • @khanhle9022
    @khanhle9022 9 หลายเดือนก่อน

    Amazing video!!!

  • @codewithwajahat
    @codewithwajahat ปีที่แล้ว

    Awesome Content

  • @justmilo
    @justmilo 11 หลายเดือนก่อน +5

    Bro, I need help, its showing only the slide-out animation. I mean, the screen does not stay in black for a moment and then shrink. Is there something new different??

  • @anth0ni33
    @anth0ni33 ปีที่แล้ว

    Great work bro.
    More!!!

    • @codegrid
      @codegrid  ปีที่แล้ว

      Thanks bro

  • @AsifMM-p1e
    @AsifMM-p1e ปีที่แล้ว +3

    Bro your GSAP STUFF are dope but need more framer motion stuff like this too, anyway loved this tutorial.

  • @Valor1real
    @Valor1real ปีที่แล้ว

    Omg you don't know how I love this
    Keep makaing like this project bro ❤❤❤

  • @SogMosee
    @SogMosee 11 หลายเดือนก่อน

    What about sliding left and right using back and forward buttons, how would you control which direction the page slides in/out based on which route the user is going to + where the user is coming from?

  • @WiseArts
    @WiseArts ปีที่แล้ว +1

    Awesome! Love the GSAP stuff, but definitely hoping to see more Framer too

  • @dindustack
    @dindustack ปีที่แล้ว

    Thanks for sharing

  • @synava7890
    @synava7890 ปีที่แล้ว +1

    whats 0gComponent?? it throws error for me... am using typescript

  • @julianvelez6563
    @julianvelez6563 ปีที่แล้ว

    nice work bro

    • @codegrid
      @codegrid  ปีที่แล้ว

      Thanks bro

  • @rien7022
    @rien7022 ปีที่แล้ว

    thanks my bro

  • @JaiShreeRam5964
    @JaiShreeRam5964 ปีที่แล้ว +2

    Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: object.
    Any one know how solve this??

    • @stay_fr0sty
      @stay_fr0sty 6 หลายเดือนก่อน

      do like : const transition = (OgComponent) => {
      return (props) => (

  • @dovudyusufzoda2216
    @dovudyusufzoda2216 ปีที่แล้ว

    daamn, in 6 minutes really?????????
    keep it uuup maaan❤‍🔥❤‍🔥❤‍🔥❤‍🔥❤‍🔥❤‍🔥❤‍🔥❤‍🔥

  • @code.design
    @code.design ปีที่แล้ว

    As stated before keep up the react videos!

  • @coffeemakir1977
    @coffeemakir1977 ปีที่แล้ว

    This video prompted me to try implementing on Gatsby 🎉 not going great lol used filename instead of page API and most tutorials are old but still a fun idea 👍

  • @stillready6405
    @stillready6405 2 หลายเดือนก่อน

    Is it possible to make that animation work on NextJs (v. 14.2+) app router?

  • @pedrayy
    @pedrayy 11 หลายเดือนก่อน

    great video mate, but a quick question, is there any workaround for pages that await api calls before loading? or for example animations for page->loading screen->page ?

  • @bobbuilder7143
    @bobbuilder7143 5 หลายเดือนก่อน

    how can we add animation to the other components on the page like navbar and h1 after the page transition is finished..?

  • @szabolcslajosvarga232
    @szabolcslajosvarga232 ปีที่แล้ว +1

    this code prevents passing props, is there any idea ?

  • @Royal6969
    @Royal6969 ปีที่แล้ว

    more videos like this pls

  • @iwayanadityasemaraputra6749
    @iwayanadityasemaraputra6749 ปีที่แล้ว

    Awesome, please make tutorial React Page Transitions with GSAP

  • @francocaporaletti3246
    @francocaporaletti3246 ปีที่แล้ว

    this is awesome! we need more tutorial like this in React! what about react + gsap?

  • @thomasapfelbacher9308
    @thomasapfelbacher9308 ปีที่แล้ว

    nice stuff. please provide more framer motion tutorials.

  • @jorgezozaya5049
    @jorgezozaya5049 ปีที่แล้ว

    I wander if this can be used with Remix? Great and inspiring tut!

  • @Razvanh29
    @Razvanh29 ปีที่แล้ว +2

    Replacing _export default Movielist_ with _export default transition(Movielist)_ makes the Movielist component fail to render. Why?

    • @eqwzx9402
      @eqwzx9402 ปีที่แล้ว +1

      make sure you have " return () => ( ... " in transition.js, it didn't work because i didn't notice i typed { insted of ( and function didn't return anything

    • @williamseni1893
      @williamseni1893 8 หลายเดือนก่อน

      @@eqwzx9402 thanks, this worked for me

    • @Coder-d5n
      @Coder-d5n 3 หลายเดือนก่อน

      @@eqwzx9402 Thank you so much bro

  • @gonzalobordes6765
    @gonzalobordes6765 ปีที่แล้ว +1

    Thats great content. I have the issue that when you first load the page ir activates de slide out animation on the loading route. Is there any way to evoid that?

    • @bixckscopez3553
      @bixckscopez3553 ปีที่แล้ว

      Same

    • @moazelgandy
      @moazelgandy ปีที่แล้ว

      Did you find a solution?

    • @moazelgandy
      @moazelgandy ปีที่แล้ว

      @@bixckscopez3553 Did you find a solution?

    • @bixckscopez3553
      @bixckscopez3553 ปีที่แล้ว

      @@moazelgandy I switched to framer motion for my page transition effects, much easier in that case

  • @thersbisht
    @thersbisht ปีที่แล้ว

    What if I want the routes animation to enter and exit at a same time? Just like in some apps. I want to achieve the same on webapp.

  • @musaraignej.123
    @musaraignej.123 ปีที่แล้ว +2

    I don't know why but the first transition "slide-in" doesn't work for me :(

    • @ConanWZP
      @ConanWZP ปีที่แล้ว

      Yeah, same problem
      Did you fix it?

    • @ConanWZP
      @ConanWZP ปีที่แล้ว

      I found solution. You have to use in Routes, key and location (

    • @moazelgandy
      @moazelgandy ปีที่แล้ว

      Did you find a solution?

    • @moazelgandy
      @moazelgandy ปีที่แล้ว

      ​@@ConanWZP This didn't work for me do have any other ideas?

  • @itsvouch
    @itsvouch 9 หลายเดือนก่อน

    Trying to do this i got a problem saying “Could not fast refresh”. I’m not able to see my page at all. Anyone else having this issue or know how to fix? I’m using jsx as well.

  • @TheProfessorMA
    @TheProfessorMA ปีที่แล้ว

    i'm using react router v6.4 and i can't use useLocation how to fix it ?

  • @iamemiliahhhh
    @iamemiliahhhh ปีที่แล้ว

    I'm using createBrowserRouter, how can I define location?

  • @divers4fun
    @divers4fun ปีที่แล้ว

    Animation transition work but i can't see the components in the middle juste transition work route path but no content ?

    • @codegrid
      @codegrid  ปีที่แล้ว

      Whatever has shown in the video is enough to make it work. The only case it doesn’t work as shown in the demo is when you miss anything

    • @divers4fun
      @divers4fun ปีที่แล้ว +1

      @@codegrid hey thank you i juste fix it i change the transition function to
      import React from 'react'
      import { motion } from "framer-motion";
      function Transition({children}) {
      return (



      {children}

      )
      }
      export default Transition
      and i change components pages to


      Page d'accueil !!

  • @mushfiqurrahmankhan7074
    @mushfiqurrahmankhan7074 ปีที่แล้ว

    What is the font name?

  • @hellofromiqbal
    @hellofromiqbal ปีที่แล้ว

    Thanks for the tutorial ♥
    Anyway, what's the name of the background music? It's kinda cool

  • @naanbalboa
    @naanbalboa ปีที่แล้ว

    Hi, may be I missed a step but, I tried to use it with Typescript and I have an error occured "src\transition.ts - Line 5:9: Parsing error: Type expected" in transition.tsx.. Is there anyone who know how can I fix it please ?

    • @DanielNapoli-vk2lj
      @DanielNapoli-vk2lj ปีที่แล้ว

      maybe same as me, your transition file is "transition.js" instead of "transition.tsx", depends on your project tho.

  • @freshu2334
    @freshu2334 ปีที่แล้ว +2

    Tip: CRA is officially deprecated, using vite is far more better solution :))

    • @codegrid
      @codegrid  ปีที่แล้ว +4

      Haven’t built a single react app since last 6 months lol (until this one) so I am totally unaware what’s going on. Thanks for the update! Will take a look 👍

    • @sujayxaradhya
      @sujayxaradhya ปีที่แล้ว +1

      I think it's deprecated not depreciated. Also, Vite is now the only choice for developers.

    • @freshu2334
      @freshu2334 ปีที่แล้ว

      @@sujayxaradhya yea right, typo

    • @sujayxaradhya
      @sujayxaradhya ปีที่แล้ว

      @@codegrid good luck bro

  • @brokegod5871
    @brokegod5871 ปีที่แล้ว +1

    the h1 is vanishing after putting the transition(page name), it doesn't work

    • @emmanuelkouassi7313
      @emmanuelkouassi7313 10 หลายเดือนก่อน

      same issue. Are you resolve this problem?

    • @bobbuilder7143
      @bobbuilder7143 5 หลายเดือนก่อน

      @@emmanuelkouassi7313 add return and it will work..
      const transition = (OgComponent) => {
      return () => {
      return ( //-----add this





      );
      };
      };

  • @harsh_here
    @harsh_here ปีที่แล้ว

    More please

  • @drivebuss8079
    @drivebuss8079 10 หลายเดือนก่อน

    how to do it with createBrowserRouter

  • @TenzDelek
    @TenzDelek ปีที่แล้ว

    if u r using next js just start from 4:49

  • @Valentin-Bleuse
    @Valentin-Bleuse ปีที่แล้ว +5

    I don't understand why but the ease-in doesn't work for me, I don't see the animation but the animation takes the good amount of time.

  • @virro18
    @virro18 ปีที่แล้ว

    Hi I'm new in react.. I see vulnerability problem. Is it safe to run the program?

  • @imhassan9119
    @imhassan9119 ปีที่แล้ว

    the navbar disappears between transitions and everything jumps up

    • @sodiumhunter5880
      @sodiumhunter5880 4 หลายเดือนก่อน

      Make sure that your application is adaptive, your images/videos have fixed height, and for your navbar, give it higher z-index than your transition element.

  • @digital_gangsta
    @digital_gangsta ปีที่แล้ว

    I love you

  • @blackpurple9163
    @blackpurple9163 ปีที่แล้ว

    Why not use AnimatePresence?

    • @codegrid
      @codegrid  ปีที่แล้ว +1

      @6:30 👀

    • @blackpurple9163
      @blackpurple9163 ปีที่แล้ว

      Ooh, I probably skipped the last chapter 😅, thanks
      I was wondering how to make a custom component that takes another component/page as a prop and makes it animate on it's way out, this really helped

    • @blackpurple9163
      @blackpurple9163 ปีที่แล้ว

      Also if possible, use your own voice or just subtitles/text, I hate the fake computer generated voice, even if used in such helpful videos, I'd much rather listen to the background music and read text or have the video completely silent than to hear any form of annoying fake voice, this is just a suggestion not some criticism, but yeah I fucking hate the fake voice

  • @abhishekcode
    @abhishekcode ปีที่แล้ว

    Please come with MERN stack project with gsap❤

  • @EnterpriseKnight
    @EnterpriseKnight ปีที่แล้ว

    That Router component must've changed while you've made this video. Now considering the context, Routes should be used (I think, feel free to correct me)

  • @yag7769
    @yag7769 ปีที่แล้ว +1

    Everything was great until @4:15 "Uncaught Error: useLocation() may be used only in the context of a component."

    • @kristina00000
      @kristina00000 ปีที่แล้ว

      same, have you managed to resolve this issue?

  • @ayoubdev8019
    @ayoubdev8019 ปีที่แล้ว

    What about nextjs router

    • @codegrid
      @codegrid  ปีที่แล้ว +1

      I think the animation approach will be the same

    • @ayoubdev8019
      @ayoubdev8019 ปีที่แล้ว

      @@codegrid yes but I guess we can't use it with router Dom , we need to use it with useRouter , onChangeaComplet but there is only a few tutorials to do it with nextjs

    • @code.design
      @code.design ปีที่แล้ว

      Yes a nextjs version would be awesome.

  • @albert21994
    @albert21994 ปีที่แล้ว +1

    that intro 💀

  • @ception7846
    @ception7846 ปีที่แล้ว

    Most awaited tutorial ❤️, Need more React tutorial

  • @ZawCodes
    @ZawCodes 9 หลายเดือนก่อน

    Not even sure what's wrong but simply doing export default transition(Component) is not rendering the component.

    • @sodiumhunter5880
      @sodiumhunter5880 4 หลายเดือนก่อน

      import { motion } from 'framer-motion';
      import React from 'react';
      function transition(Component) {
      return function TransitionComponent(props) {
      return (





      );
      };
      }
      export default transition;
      try to pass props like this

  • @mirage4731
    @mirage4731 10 หลายเดือนก่อน

    Why are u USING CRA

    • @codegrid
      @codegrid  10 หลายเดือนก่อน

      Sorry bro

  • @funnytok244
    @funnytok244 ปีที่แล้ว

    Is this your voice?😅

  • @StephenRayner
    @StephenRayner ปีที่แล้ว +1

    Create react app 😂

    • @codegrid
      @codegrid  ปีที่แล้ว

      🤡🤡🤡🤣

  • @Alerrrrrt
    @Alerrrrrt ปีที่แล้ว

    Hey ,what about handling animation ? In barba and highway when u leave the page u need to destroy animation (like scrolltrigger and locomotive scroll for example ) and restart them on new page ,same for this?

    • @codegrid
      @codegrid  ปีที่แล้ว

      I'm new but late to Framer motion. It looks like Animate Presence handles it for you. It didn't take any destroy block to work.