点击上方“CSDN”,选择“置顶公众号”
关键时刻,第一时间送达!
React中的事件处理函数绑定看似容易,但还是需要一些技巧。如果你了解Perl和Python的历史,就应该知道TMTOWTDI和TOOWTDI这两个词的意思:Perl的理念是TMTOWTDI,即There's More Than One Way To Do It(完成一项任务有很多种方法),而Python的理念是TOOWTDI,即There's Only One Way To Do It(完成一项任务只有一种方法)。在历史上,Perl曾以这种多样性闻名,但实践证明,过多的实现方法只会给代码造成混乱,从软件工程的角度来看,它远远不如Python奉行的单一方法理念。很不幸,JavaScript就是个TMTOWTDI语言,所以混乱也是在所难免了。
这篇文章将探讨在React中绑定事件处理函数的常见方法,以及每种方法的优缺点。本文最重要的目的就是帮你找到那个“唯一的方法”。
我假设你明白函数绑定的原因和必要性,比如至少应该理解 this.handler.bind(this) 中的 .bind(this) 的含义,理解 function() { console.log(this); } 和 () => { console.log(this); } 的区别。如果对于这两个问题有疑惑,可以先搜索下关于函数绑定的知识。
▌