javascript - react : TypeError: Cannot call a class as a function

标签 javascript reactjs redux react-redux

我有这个简单的代码:

    class App extends Component {

        render() {
            return (
                <div>
                    <PanelPayment />
                </div>
            );
        }
    }
    export default App

还有这个:

export default class PanelPayment {
    render() {
        return (
            <div>
                <button>Pay now!</button>
            </div>
        )
    }
}

我收到错误:

TypeError: Cannot call a class as a function

class.App.js:66 Uncaught TypeError: Cannot call a class as a function
at _classCallCheck (class.App.js:66)
at PanelPayment (class.PanelPayment.js:3)
at ReactCompositeComponent.js:305
at measureLifeCyclePerf (ReactCompositeComponent.js:75)
at ReactCompositeComponentWrapper._constructComponentWithoutOwner (ReactCompositeComponent.js:304)
at ReactCompositeComponentWrapper._constructComponent (ReactCompositeComponent.js:279)
at ReactCompositeComponentWrapper.mountComponent (ReactCompositeComponent.js:187)
at Object.mountComponent (ReactReconciler.js:45)
at ReactDOMComponent.mountChildren (ReactMultiChild.js:236)
at ReactDOMComponent._createInitialChildren (ReactDOMComponent.js:703)
at ReactDOMComponent.mountComponent (ReactDOMComponent.js:522)
at Object.mountComponent (ReactReconciler.js:45)
at ReactCompositeComponentWrapper.performInitialMount (ReactCompositeComponent.js:370)
at ReactCompositeComponentWrapper.mountComponent (ReactCompositeComponent.js:257)
at Object.mountComponent (ReactReconciler.js:45)
at ReactCompositeComponentWrapper.performInitialMount (ReactCompositeComponent.js:370)
at ReactCompositeComponentWrapper.mountComponent (ReactCompositeComponent.js:257)
at Object.mountComponent (ReactReconciler.js:45)
at ReactCompositeComponentWrapper.performInitialMount (ReactCompositeComponent.js:370)
at ReactCompositeComponentWrapper.mountComponent (ReactCompositeComponent.js:257)
at Object.mountComponent (ReactReconciler.js:45)
at mountComponentIntoNode (ReactMount.js:104)
at ReactReconcileTransaction.perform (Transaction.js:143)
at batchedMountComponentIntoNode (ReactMount.js:126)
at ReactDefaultBatchingStrategyTransaction.perform (Transaction.js:143)
at Object.batchedUpdates (ReactDefaultBatchingStrategy.js:62)
at Object.batchedUpdates (ReactUpdates.js:97)
at Object._renderNewRootComponent (ReactMount.js:319)
at Object._renderSubtreeIntoContainer (ReactMount.js:401)
at Object.render (ReactMount.js:422)
at Object../src/index.js (index.js:15)
at __webpack_require__ (bootstrap de5a69c98061cf2fbc7c:669)
at fn (bootstrap de5a69c98061cf2fbc7c:87)
at Object.0 (registerServiceWorker.js:108)
at __webpack_require__ (bootstrap de5a69c98061cf2fbc7c:669)
at bootstrap de5a69c98061cf2fbc7c:715
at bundle.js:719

请让我知道我做错了什么。

最佳答案

你忘记将它扩展为 React.Component 类:

export default class PanelPayment extends Component{
 render() {
     return (
         <div>
             <button>Pay now!</button>
         </div>
     )
 }
}

关于javascript - react : TypeError: Cannot call a class as a function,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45808438/

相关文章:

list - 将元素添加到 Map 内的 List (ImmutableJS)

javascript - 模态框不适用于所有引用

javascript - Angular JS : How to avoid loss of data of $http call on page refresh?

javascript - 避免在 Google Visualization Chart API 中相同的点被绘制两次

javascript - 了解 React-Redux 工具包语法?

javascript - 未捕获的类型错误 : Cannot read property 'props' of null in React

javascript - React-Select:向输入添加自定义数据属性

javascript - 在 Nodejs 上使用来自 GoDaddy 的私钥

javascript - 在 redux 中,当为调度编写 thunk 时, "next"和 "store.dispatch"之间有什么区别?

reactjs - 动态更改 Material-ui 主题 --> 不会影响 child