AOS Animation on scroll is not working in React js

  • react-js
  • 52 Views
  • 3 Min Read
  • 9 Jul 2024

Welcome to this quick solution. Beginner developers often get stuck in this type of situation, and sometimes advanced developers do too. So, in this solution, we will understand this error and fix it easily.

 

So let's get started.

 

You can find below practical solutions for your problem.

 

  1. Library Installation
  2. Importing Styles and Library
  3. Initialization
  4. Data Attribute
  5. Check for errors
  6. Dependencies
  7. Global Styles
  8. Scroll Event
  9. Check the entire code once again

 

 

1. Library Installation

 

If you're having problems with the AOS library not working, one possible cause could be an incorrect installation. Check the package.json file to make sure that the AOS library is properly installed in your project's dependencies.

 

AOS Library

 

If the package.json file doesn't include this package, you can install it by using this command.

 

// For yarn 👇
yarn add aos

// For npm 👇
npm install aos --save

// For bower 👇
bower install aos --save

 

If you've already installed the AOS library in your project and still have problems, don't worry. We have provided other methods as well; see them.

 

 

2. Importing Styles and Library

 

Make sure you are importing the AOS library and styles in your component or at the global level where they're needed.

 

Here's a simple explanation: If you have two components, App.jsx and home.jsx, and you're using the attribute (data-aos='fade-left') in an element within home.jsx, and then you call home.jsx in App.jsx, make sure to import the AOS CSS file and library in App.jsx file. Importing them in home.jsx could cause issues.

 
import AOS from 'aos';
import 'aos/dist/aos.css';
 

 

3. Initialization

 

For functional components, you can easily add an AOS library by using the 'useEffect' hook. Put 'useEffect' inside the function for a clear setup.

 

Here's an example of a functional component

 
import React, { useEffect } from 'react';
import AOS from 'aos';
import 'aos/dist/aos.css';

function App() {
    useEffect(() => {
        AOS.init();
    }, []);

    return (
        <div data-aos="fade-up">Hello World!</div>
    );
};

export default App;
 

For class-based components, use the componentDidMount lifecycle method. Put 'componentDidMount' inside the class component for a clear setup.

 

Here's an example of a class component

 
import React from 'react';
import AOS from 'aos';
import 'aos/dist/aos.css';

class App extends React.Component {
    componentDidMount() {
        AOS.init({});
    }

    render() {
        return (
            <div data-aos="fade-up">Hello World!</div>
        );
    }
}

export default App;
 

 

4. Data Attribute

 

Make sure to add the 'data-aos' attribute to the element you want to animate.

 
<div data-aos="fade-up">Hello World!</div>
 
 

5. Check for Errors

 

Check your browser's console for any AOS initialization or styling issues. If you understand the error, apply the solution carefully. If it's unclear, follow the step-by-step solution provided in this article to troubleshoot effectively.

 

 

6. Dependencies

 

Verify that your project dependencies, especially React and AOS, are up to date. Sometimes issues can arise due to old versions.

 

 

7. Global Styles

 

Ensure there are no problems between AOS styles and global styles or third-party libraries. Confirm that styles from other parts of your project don't conflict with AOS animations for a smooth visual experience.

 

 

8. Scroll Events

 

Confirm that your page has enough content to trigger scroll events. AOS animations are triggered as elements enter the viewport during scrolling.

 

If you've carefully read through this guide, the issue in your project should be fixed, and your code should now be working properly.

 

If the error persists, consider exploring this final option for resolution.

 

 

9. Check the entire code once again

 

Start by thoroughly reviewing your code to identify any errors. If everything looks correct, revisit Steps 1 to 8 for a comprehensive check.

 

If you've tried these steps and the problem continues, please mention your code and share it in the question box below. You will get an answer as soon as possible.

 

 

Conclusion

 

We hope that you have found the solution to your problem. We have given all the steps to fix this problem, like library installation, importing styles, initialization, data attributes, error checking, dependencies, global styles, and scroll events, so that it becomes easier for you to fix the problem.

Didn't find your answer? Add your question.

Share

Comments (0)

No comments yet. Be the first to comment!