【问题标题】:Super expression must either be null or a function, not undefined - reactjs超级表达式必须为空或函数,而不是未定义 - reactjs
【发布时间】:2018-02-19 10:47:27
【问题描述】:

我是react.js 的初学者。

我收到了这个错误:

超级表达式必须为 null 或函数,而不是未定义

我的浏览器 chrome 控制台中的完整错误输出:

未捕获的类型错误:超级表达式必须为 null 或 函数,不是未定义的 在 _inherits (bundle.js:21166) 在 bundle.js:21172 在 Object.184.react (bundle.js:21196) 在 s (bundle.js:1) 在 e (bundle.js:1) 在 bundle.js:1

我的代码:

const React=require('react');
const ReactDom=require('react-dom');

class App extends React .component{

    render(){
        return(
            <div>
                < Header />,
                < Main />,
                < Footer />
            </div>
        );
    }
}

class Header extends React .component{
    render(){
        return(
            <Header>
                <nav>
                    <h1>Header</h1>
                </nav>
            </Header>
        );
    }
}


class Main extends React .component{
    render(){
        return(
            <div>
                <p> text 1</p>
            </div>
        );
    }
}

class Footer extends React .component{
    render(){
        return(
            <h2>Footer</h2>
        );
    }
}

ReactDom .renderToStaticMarkup (<App /> ,document.getElementById('app'));

【问题讨论】:

    标签: javascript node.js reactjs


    【解决方案1】:

    对我来说,这是由于对静态成员(打字稿)的循环依赖而发生的。 例如

    乙: 从'./B'导入A

    让 x=A.staticValue

    一个: 从 './A' 导入 B A类{ 静态静态值 }

    【讨论】:

      【解决方案2】:

      您应该将 React.component 更改为 React.Component 大写 C。
      例如-class main extends React.Component。除此之外,删除React.Component 之间的空格

      【讨论】:

        【解决方案3】:

        您似乎错误地扩展了类。 应该是 React.C组件, 不是 React。c组件

        【讨论】:

          猜你喜欢
          • 2018-01-21
          • 2017-07-11
          • 1970-01-01
          • 2018-02-01
          • 2016-10-07
          • 1970-01-01
          • 1970-01-01
          • 2023-04-10
          • 1970-01-01
          相关资源
          最近更新 更多