反应文档说Never mutate this.state directly, as calling setState() afterwards may replace the mutation you made. Treat this.state as if it were immutable...
但是,当我根本不使用setState()时,这是一个非问题。缺点直接改变状态,forceUpdate()vs setState
我能想到的唯一的缺点是:
不能使用
shouldComponentUpdate
/componentWillUpdate
/componentDidUpdate
比较新旧状态。对其他人来说,维护可能会更困难。因为这不是标准的做事方式。
但是否有任何其他缺点不使用的setState()和直接突变状态?
编辑:我已经删除了我的推理为什么我吸引到这一想法。我知道这是一种反模式,我知道这可能不是最好的方式。但这个问题全是关于“为什么”。
EDIT2:这里也关键词是other
在... are there any other disadvantages ...
*“我这背后的原因是,大多数我遇到的发展作出反应的问题,是由于对setState的异步本性。” *什么样的事情?通常,当你跳过一个发展良好,使用良好的框架的核心部分时,这是因为你没有意识到遵循反模式。不要绕过框架,找出你为什么绊倒事物。 –
有趣的问题,我很高兴upvote所有的答案,提到这种方法的具体缺点 – Kos