How to detect a React component vs. a React element?

前端 未结 7 1971
广开言路
广开言路 2020-12-02 10:04

React.isValidElement tests true for both React components as well as React elements. How would I test, specifically, that an object is a React component? Curren

7条回答
  •  暗喜
    暗喜 (楼主)
    2020-12-02 10:14

    In addition to @EmanualJade answer, you can use this to check if a variable is a function component

    React.isValidElement(Component())
    

    As @Leonardo has pointed out, some compilers can cause this to fail:

    String(component).includes('return React.createElement')
    

提交回复
热议问题