由 mobx-react 装饰的 PureComponent 抛出关于“shouldComponentUpdate”存在的错误

PureComponent decorated by mobx-react throws error about `shouldComponentUpdate` presence

在控制台中我看到这个警告:

index.js:2178 Warning: Body has a method called shouldComponentUpdate(). shouldComponentUpdate should not be used when extending React.PureComponent. Please extend React.Component if shouldComponentUpdate is used.

Body 组件正在使用

...
import { observer, inject } from 'mobx-react';
...
@inject('store')
@observer
class Body extends React.PureComponent<BodyProps> {
...

但在任何地方都没有这种 shouldComponentUpdate 方法。

这是来自 mobx-react 吗?我可以在由 @observable@inject 修饰的组件中使用 PureComponent 吗?

PureComponents 不应与 observer 结合使用。从概念上讲,这很奇怪,因为观察者使组件变得不纯;因为他们可以在不更改道具的情况下进行更新(这实际上是观察者的重点)。

即将发布的 mobx-react 版本将对此发出警告:)