从品牌网站建设到网络营销策划,从策略到执行的一站式服务
react函数调用以及传参。先写目前市面上的写法,以及分析他们的不便之处,最后给出个人认为较方便的写法
巴马ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为成都创新互联公司的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:13518219792(备注:SSL证书合作)期待与您的合作!
一。先写不传参数的情况
1、es5写法
click(){
dosomething.....
}
调用:onClick={this.click.bind(this)}
每次调用都需要传个this。
有的在constructor这样写
this.click = this.click.bind(this)
2、es6写法
click=()=>{
dosomething...
}
调用:onClick={this.click},感觉很好
二。如果遇到传参就比较麻烦了
1、es5的写法
click(value){
dosomething...
}
调用:onClick={this.click.bind(this,"111")}
依旧每次调用都需要传个this。
2、es6写法
click=(value)=>{
dosomething...
}
调用:onClick={this.click.bind(this,"111")},
虽然第一个参数没用,传什么都行,1,2,3,4都可以,但是还不能不传。很烦
箭头函数调用
onClick={()=>{this.click("1111")}},
函数已经是箭头函数,还要在写个箭头函数,烦
三。对于以上方式,何不为es6重写个bind。箭头函数只写一次,bind不用传this,
Function.prototype.b = function(...args){
var Fn = this;
return function(e){
Fn(...args,e);
}
}
click=(value)=>{
dosomething...
}
调用:onClick={this.click.b("1111")}
,
用法与bind一样,只不过只有有参数的时候才使用,无参数直接onClick={this.click}
就可以了
成都网站建设公司地址:成都市青羊区太升南路288号锦天国际A座10层 建设咨询028-86922220
成都快上网科技有限公司-四川网站建设设计公司 | 蜀ICP备19037934号 Copyright 2020,ALL Rights Reserved cdkjz.cn | 成都网站建设 | © Copyright 2020版权所有.
专家团队为您提供成都网站建设,成都网站设计,成都品牌网站设计,成都营销型网站制作等服务,成都建网站就找快上网! | 成都网站建设哪家好? | 网站建设地图