1

I have an ordinary JavaScript function like this:

// frontend/src/static/js/components/daw/index.js

export default function Daw() {
  return (
    <>
        <div>Hello world.</div>
    </>
  );
}

I'm trying to use the above function inside the below ReactJS component:

// frontend/src/static/js/pages/_VideoMediaPage.js

import React from 'react';
import Daw from '../components/daw';

export class Page extends React.PureComponent {
  constructor(props) {
    super(props);
  }

  render() {
    return (
      <>
        <div>{Daw()}</div>
      </>
    );
  }
}

But I'm getting this error:

Uncaught Error: Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:

  1. You might have mismatching versions of React and the renderer (such as React DOM)
  2. You might be breaking the Rules of Hooks
  3. You might have more than one copy of React in the same app

Error screenshot

Question

What's the proper way to use the ordinary function inside the ReactJS component?

2
  • You've left something out in your code. Where's the hook that this error message is talking about? Commented Feb 28, 2022 at 16:41
  • @Thomas The hook error got resolved by @yousoumar answer :) Commented Feb 28, 2022 at 18:36

1 Answer 1

2

Your function is technically a React Functional Component. You should be calling it like one.

import React from 'react';
import Daw from '../components/daw';

export class Page extends React.PureComponent {
  constructor(props) {
    super(props);
  }

  render() {
    return (
      <>
        <div><Daw/></div>
      </>
    );
  }
}

Sign up to request clarification or add additional context in comments.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.