问答题534/1593怎么在代码中判断一个 React 组件是 class component 还是 function component?

难度:
2023-04-26 创建

参考答案:

可以使用JavaScript的typeof运算符和React的Component类来进行判断。

下面是一个示例的判断方法:

1function isClassComponent(component) { 2 return ( 3 typeof component === 'function' && 4 !!component.prototype.isReactComponent 5 ); 6} 7 8// 示例用法 9const MyComponent = () => <div>Hello, I'm a function component!</div>; 10const MyClassComponent = class extends React.Component { 11 render() { 12 return <div>Hello, I'm a class component!</div>; 13 } 14}; 15 16console.log(isClassComponent(MyComponent)); // false 17console.log(isClassComponent(MyClassComponent)); // true

上面定义了一个名为isClassComponent的函数,它接受一个组件作为参数。函数内部使用typeof运算符来判断该组件是否为函数类型,并通过检查component.prototype.isReactComponent属性来确定是否为Class组件。

最近更新时间:2024-07-23

赞赏支持

预览

题库维护不易,您的支持就是我们最大的动力!