C语言调用es6,ES6 箭头函数、普通函数、调用方法
importReact,{Component} from'react';import{
Platform,StyleSheet,Text,Image,View,TouchableOpacity,ToastAndroid,} from'react-native';
export default classsrrowFunDemo extendsComponent {
constructor(props) {
super(props);this.state= {
data0: '点击0',data1: '点击1',data2: '点击2',data3: '点击3',data4: '点击4',data5: '点击5',}
};//箭头函数(无参)press0= () => {
this.setState({
data0: "0被点击了"});ToastAndroid.show('0被点击了',ToastAndroid.SHORT);};
//一般方法(无参)press1() {
this.setState({
data1: "1被点击了"});ToastAndroid.show('1被点击了',ToastAndroid.SHORT);};
//一般方法(无参)press2() {
this.setState({
data2: "2被点击了"});ToastAndroid.show('2被点击了',ToastAndroid.SHORT);};
//一般方法(有参)press3(x,y) {
this.setState({
data3: x+y
});ToastAndroid.show('3被点击了: '+this.state.data3,ToastAndroid.SHORT);};
//一般方法(有参)press4(x) {
this.setState({
data4: x
});ToastAndroid.show('4被点击了',ToastAndroid.SHORT);};
//箭头函数(有参)press5= (x) => {
this.setState({
data5: x
});ToastAndroid.show('5被点击了',ToastAndroid.SHORT);};
render() {
return(
{/*正确的方式应该不在render的时候立即执行。因此正确调用方法如下,同时,箭头函数将一个函数赋值给press0变量,变量在调用的时候自然不需要加()*/}
// onPress={this.press0} //如果该方法本身就是箭头函数,那么直接调用this.press0// onPress={()=>this.press0()}//无论该方法是箭头函数还是普通函数,都可以利用该方法来执行()=>this.press0()onPress={this.press0.bind(this)}//无论该方法是箭头函数还是普通函数,都可以利用该方法来执行()=>this.press0()>{this.state.data0}{/*普通函数的无参与有参的调用方式相同。注意的是有参的函数使用bind方式传递参数时this必须在最前面。*/}
onPress={() => this.press1()}
>{this.state.data1}
onPress={this.press2.bind(this)}
>{this.state.data2}
onPress={this.press3.bind(this,2222,1111)}
>{this.state.data3}
onPress={()=>this.press4(2222)}
>{this.state.data4}
{/*下面的调用方法错误,原因:下面的调用方式导致onpress事件直接被调用press5方法修改了state,由于state被修改,页面被重新渲染,再次直接调用press5形成循环*/}
{/*正确函数调用方式1、箭头方法 onPress={() => this.press1()} (无参、箭头函数或普通函数,都可以用此方式调用)2、箭头方法 onPress={() => this.press1(xx)} (有参、箭头函数或普通函数,都可以用此方式调用)3、bind方式 onPress={this.press2.bind(this)} (无参、箭头函数或普通函数,都可以用此方式调用)4、bind方式 onPress={this.press2.bind(this,x)}(有参、箭头函数或普通函数,都可以用此方式调用)*/}
//错误//onPress={this.press5(2222)}//正确onPress={this.press5.bind(this,2222)}
//正确//onPress={()=>this.press5(2222)}>{this.state.data5});}
}
conststyles = StyleSheet.create({
text: {
backgroundColor: 'red',width: 200,height: 30,marginBottom: 50,justifyContent:'center',alignItems: 'center',},});
C语言调用es6,ES6 箭头函数、普通函数、调用方法相关推荐
- [译]深入ES6之箭头函数
原作者:江凌 箭头一族缺少的家庭成员 在JavaScript出现以来,箭头(Arrow)就一直是其语法的一部分.一般来说,JavaScript教程的第一篇就会讲如何在HTML中插入箭头括号来作为注释, ...
- button执行onclick函数_千万别再一直无脑使用ES6的箭头函数了,它虽然很有用但并不是万能的...
相信很多小伙伴自从知道了ES6的箭头函数以后,都疯狂得使用,渐渐的淡忘了普通函数的使用.不过确实,箭头函数看起来比较简洁,用起来也舒服,不过它的出现是为了解决某一部分问题的,并不是用来替代普通函数的, ...
- ES6中箭头函数解释
箭头函数 任何可以书写匿名函数的位置,都可以书写箭头函数 箭头函数将会绑定this为函数书写位置的this值 模块化(nodejs带来的模块化) 没有模块化的世界:全局变量污染,难以管理 常见的模块化 ...
- 深入ES6:箭头函数
箭头从一开始就一直是JavaScript的一部分.第一个JavaScript教程建议在HTML注释中包装内联脚本.这会阻止不支持JS的浏览器错误地将JS代码显示为文本.你会写这样的东西: <sc ...
- ES6语法---箭头函数/关于this指向
this指向问题: ES5:var obj = {x:1,func:function(){console.log(this.x);},test:function(){//定时器为异步setTimeou ...
- ES6新特性_ES6生成器函数声明与调用---JavaScript_ECMAScript_ES6-ES11新特性工作笔记020
然后我们再来看这个 生成器函数的声明调用 生成器函数就是在函数,前面加个*,表示这个是个生成器函数. 然后我们写个iterator=gen(); 调用一下这个函数,看看这个函数中有个next方法 所以 ...
- ES6中的高阶函数:如同 a = b = c 一样简单
2019独角兽企业重金招聘Python工程师标准>>> 作者:Sequoia McDowell 2016年01月16日 ES6来啦!随着越来越多的代码库和思潮引领者开始在他们的代码中 ...
- 【ES6】异步操作和async函数
[ES6]异步操作和async函数 一.基本概念 二.回调函数 三.Promise 四.async函数 查看更多ES6教学文章: 参考文献 引言:ES6新增的Generato.Promise.asyn ...
- [译] ES6+ 中的 JavaScript 工厂函数(第八部分)
本文讲的是[译] ES6+ 中的 JavaScript 工厂函数(第八部分), 原文地址:JavaScript Factory Functions with ES6+ 原文作者:Eric Elliot ...
最新文章
- Python logging调用Logger.info方法的处理过程
- [转载]xcode5时代如何设置Architectures和Valid Architectures
- 查题接口 源码 php 爬题,大学网课查题公众号查题教程_网课查题题库接口API-在线搜答案...
- 分组,命名分组,url的命名和反向解析
- 整理 | 软件与工具的收集汇总及推荐
- springMVC-配置Bean
- 常见的getchar 与EOF的问题
- 总有几位老师让你一生感激不尽----我的大学老师
- 用友未获得服务器信息,客户端查询银行日记账没有数据出现,其他客户端和服务器正常...
- ProcessPoolExecutor
- c语言代码99乘法表,c语言九九乘法表代码如何写
- elipse下载安装教程
- SpringBoot电影网站源码(含数据库)
- SDRAM控制器设计(9)用读写FIFO优化及仿真验证
- python distribute包管理工具安装AttributeError错误
- 单反相机的传奇—佳能单反50年辉煌之路(连载十五)
- 安卓开发招聘!免费Android高级工程师学习资源,2年以上经验必看
- 知识蒸馏 | (1) 知识蒸馏概述
- C#实现图书管理系统(课程设计)——第二步、登陆界面
- 51Nod-2006 飞行员配对(二分图最大匹配,匈牙利算法)
热门文章
- <meta name=“robots“ content=“index,follow“>的解释
- hdu1686:KMP板子
- P4721 【模板】分治 FFT
- 【SDOI2013】项链【莫比乌斯反演】【Polya定理】【递推式求通项】【数论】
- Lawn of the Dead
- Super Jumping! Jumping! Jumping! HDU - 1087
- 牛客题霸 [合并二叉树] C++题解/答案
- 牛牛和牛可乐的赌约2
- [2020-11-23 contest]图(dfs剪枝),劫富济贫(字典树),小A的树(树形DP),游戏(贪心/斜率优化)
- P7408-[JOI 2021 Final]ダンジョン 3【贪心,树状数组】