非常新的反应, 我有一个类:
export const Checkbox = ({ label, className }) => {
....
....
return(
.............
.............
);
}
在这样的类中,如何指定添加componentDidMount和componentWillReceiveProps?
修改
我有一个外行人的疑问,这是为复选框创建包装器反应组件的正确方法吗?功能组件或从组件扩展?如果我为其他人创建一个Checkbox包装器组件,他们是否可以从他们的页面连接到商店(比如redux)?
谢谢, Santhosh
答案 0 :(得分:2)
你不能。
这些是功能组件,不支持React的生命周期方法。
如果您想使用React的生命周期方法,则需要一个继承自LayoutDocuments
见下面的例子。
React.Component
Here is a good answer解释差异以及何时使用功能性类组件。
现在可以在引入hooks时使用生命周期方法。
如果您希望实现class Example extends React.Component {
componentDidMount(){
//code here
}
}
,您将使用componentDidMount
挂钩并传递一个空数组作为第二个参数。示例如下所示。
useEffect
答案 1 :(得分:2)
你做不到。
如果要使用React的生命周期方法,则需要一个继承自React.Component的类。
export class Checkbox extends React.Component {
componentDidMount() {
....
}
render() {
const { label, className } = this.props;
....
}
}
答案 2 :(得分:1)
你做不到。如果需要生命周期方法,则应创建一个扩展PureComponent或Component的类。