📅  最后修改于: 2023-12-03 15:04:49.783000             🧑  作者: Mango
在React中,我们可以使用两种不同的方式来创建组件:函数式组件和类组件。这两种组件的主要区别是它们的定义方式和一些特性。
函数式组件是使用JavaScript函数来定义的。它是一种简单的组件形式,具有以下特点:
下面是一个简单的函数式组件的例子:
import React from 'react';
function FunctionalComponent(props) {
return <div>{props.message}</div>;
}
类组件是采用ES6的class语法来定义的。它是React中最早的一种组件定义方式,具有以下特点:
setState
方法来更新状态。componentDidMount
和componentDidUpdate
等。下面是一个简单的类组件的例子:
import React from 'react';
class ClassComponent extends React.Component {
constructor(props) {
super(props);
this.state = {
count: 0,
};
}
componentDidMount() {
console.log('Component mounted');
}
componentDidUpdate() {
console.log('Component updated');
}
render() {
return (
<div>
<button onClick={() => this.setState({ count: this.state.count + 1 })}>
Increment
</button>
<p>Count: {this.state.count}</p>
</div>
);
}
}
在选择函数式组件或类组件时,可以根据组件的需求和复杂性来决定。
总结来说,函数式组件更简单、易于理解和测试,而类组件更灵活,适用于复杂的组件结构和有状态的组件。
参考资料: