Niyaz Mulla
Niyaz Mulla

Reputation: 31

TypeError: Class extends value #<Object> is not a constructor or null in react js

I am trying to over ride some function of a prime react button component but i am getting this error while extending prime react button component class. Here is my code:

import { Button } from "primereact/button";
class BtnBox extends Button {
  constructor(props) {
    super(props);
    this.renderLabel = this.renderLabel.bind(this);
  }

  renderLabel() {
      return <span>icon</span>;
  }
}
class IconButton extends React.Component {
  render() {
    return (
      <div className="icon-button">
        <BtnBox {...this.props} />
      </div>
    );
  }
}

export default IconButton;

Upvotes: 2

Views: 729

Answers (1)

Yusif Karimov
Yusif Karimov

Reputation: 492

can you try this form ?

import { Button } from "primereact/button";
     class BtnBox extends Button {
         constructor(props) {
             super(props);
          }
            
         render = () => <span>{this.props.name}</span>;
      }
    
   class IconButton extends React.Component {
      render() {
        return (
          <div className="icon-button">
            <BtnBox name='add item' />
          </div>
        );
      }
    }
    
 export default IconButton;

if doesn't suite for you, can you share more detail ?

Upvotes: 1

Related Questions