我现在在一个偏心的React代码库中工作,其中所有组件函数都被编写为类属性箭头函数,例如
componentDidMount = async () => {
console.log('componentDidMount');
};
当然,绑定这样的生命周期方法没有任何好处。但是,我想知道是否存在潜在的弊端,也许是在React的继承中。
答案 0 :(得分:0)
我看到了类属性箭头功能的缺点:想象一下某种网格,其中每个单元格都是同一React组件类的实例。如果生命周期函数是普通函数,则它们在原型中仅在内存中存在一次。如果它们是类属性箭头函数,则每个单元将具有其自己的函数副本。如评论中提到的Medium article所述,这将影响性能。 (该文章中声称缺少原型会使测试复杂化)。
(顺便说一句,似乎值得一提的是,随着采用React挂钩,整个主题可能会过时。)