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

Posted

技术标签:

【中文标题】TypeError: Class extends value #<Object> is not a constructor or null in react js【英文标题】: 【发布时间】:2021-05-29 10:58:56 【问题描述】:

我正在尝试覆盖主要反应按钮组件的某些功能,但是在扩展主要反应按钮组件类时出现此错误。 这是我的代码:

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;

【问题讨论】:

【参考方案1】:

你可以试试这个表格吗?

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;

如果不适合你,你能分享更多细节吗?

【讨论】:

感谢您的回复@yusif。但是 renderLabel 是我试图覆盖按钮类的函数。

以上是关于TypeError: Class extends value #<Object> is not a constructor or null in react js的主要内容,如果未能解决你的问题,请参考以下文章

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

TypeError:使用flask_jwt_extended int RESTful API时类型函数的对象不是JSON可序列化的

flask-jwt-extended TypeError:“函数”类型的对象不是 JSON 可序列化的

关于〈? extends Class 〉和〈T extends Class〉的区别

Class<? extends OrderChargeEditParam; editParam

未捕获的 TypeError:Object(...)(...).Class 不是函数