JSX 里面
<button onClick={bianli () }>123123123</button></div>
1.如果 onClick={bianli () } 有加括号,绝对是错的,它会执行return 方法 马上执行这个方法。
2. onClick={ setState((state)=》state+1 ) },这也是绝对是错的,因为setState方法执行,会重新触发return 函数。
总结:
1. onClick={bianli } 不要加括号
2. onClick={()=》setState((state)=》state+1 ) } 调用setState 必须调用箭头函数
-------------------------------------------------------------
菜鸟教程里面 ,< button οnclick= "" /> 也能触发点击!!!
但你tmd JSX onclick是没用的 必须 onClick!!!!!
xSxxxxBx菜鸟
------------------------ TMD--------------------------
JSX 的语法还是不太懂,要详细的去了解下。
语法:onclick = {this.函数名}
onClick = {this.yourEvent}
事件类型
onClick onChange onSubmit
绑定this方式
第一种:onClick = {this.yourEvent} 需要在构造函数中绑定this
第二种:onClick = {this.yourEvent.bind(this)}
第三种:onClick = {() => this.yourEvent()}
第四种:属性初始化
clickEvent = () => {事件逻辑}
复制代码
优缺点:
第一种推荐,一般都是用这种方式
第二种每次render,都会重新生产一个函数
第三种每次render,都会执行一遍方法
第四种 还是实验性的