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 箭头函数、普通函数、调用方法相关推荐

  1. [译]深入ES6之箭头函数

    原作者:江凌 箭头一族缺少的家庭成员 在JavaScript出现以来,箭头(Arrow)就一直是其语法的一部分.一般来说,JavaScript教程的第一篇就会讲如何在HTML中插入箭头括号来作为注释, ...

  2. button执行onclick函数_千万别再一直无脑使用ES6的箭头函数了,它虽然很有用但并不是万能的...

    相信很多小伙伴自从知道了ES6的箭头函数以后,都疯狂得使用,渐渐的淡忘了普通函数的使用.不过确实,箭头函数看起来比较简洁,用起来也舒服,不过它的出现是为了解决某一部分问题的,并不是用来替代普通函数的, ...

  3. ES6中箭头函数解释

    箭头函数 任何可以书写匿名函数的位置,都可以书写箭头函数 箭头函数将会绑定this为函数书写位置的this值 模块化(nodejs带来的模块化) 没有模块化的世界:全局变量污染,难以管理 常见的模块化 ...

  4. 深入ES6:箭头函数

    箭头从一开始就一直是JavaScript的一部分.第一个JavaScript教程建议在HTML注释中包装内联脚本.这会阻止不支持JS的浏览器错误地将JS代码显示为文本.你会写这样的东西: <sc ...

  5. ES6语法---箭头函数/关于this指向

    this指向问题: ES5:var obj = {x:1,func:function(){console.log(this.x);},test:function(){//定时器为异步setTimeou ...

  6. ES6新特性_ES6生成器函数声明与调用---JavaScript_ECMAScript_ES6-ES11新特性工作笔记020

    然后我们再来看这个 生成器函数的声明调用 生成器函数就是在函数,前面加个*,表示这个是个生成器函数. 然后我们写个iterator=gen(); 调用一下这个函数,看看这个函数中有个next方法 所以 ...

  7. ES6中的高阶函数:如同 a = b = c 一样简单

    2019独角兽企业重金招聘Python工程师标准>>> 作者:Sequoia McDowell 2016年01月16日 ES6来啦!随着越来越多的代码库和思潮引领者开始在他们的代码中 ...

  8. 【ES6】异步操作和async函数

    [ES6]异步操作和async函数 一.基本概念 二.回调函数 三.Promise 四.async函数 查看更多ES6教学文章: 参考文献 引言:ES6新增的Generato.Promise.asyn ...

  9. [译] ES6+ 中的 JavaScript 工厂函数(第八部分)

    本文讲的是[译] ES6+ 中的 JavaScript 工厂函数(第八部分), 原文地址:JavaScript Factory Functions with ES6+ 原文作者:Eric Elliot ...

最新文章

  1. Python logging调用Logger.info方法的处理过程
  2. [转载]xcode5时代如何设置Architectures和Valid Architectures
  3. 查题接口 源码 php 爬题,大学网课查题公众号查题教程_网课查题题库接口API-在线搜答案...
  4. 分组,命名分组,url的命名和反向解析
  5. 整理 | 软件与工具的收集汇总及推荐
  6. springMVC-配置Bean
  7. 常见的getchar 与EOF的问题
  8. 总有几位老师让你一生感激不尽----我的大学老师
  9. 用友未获得服务器信息,客户端查询银行日记账没有数据出现,其他客户端和服务器正常...
  10. ProcessPoolExecutor
  11. c语言代码99乘法表,c语言九九乘法表代码如何写
  12. elipse下载安装教程
  13. SpringBoot电影网站源码(含数据库)
  14. SDRAM控制器设计(9)用读写FIFO优化及仿真验证
  15. python distribute包管理工具安装AttributeError错误
  16. 单反相机的传奇—佳能单反50年辉煌之路(连载十五)
  17. 安卓开发招聘!免费Android高级工程师学习资源,2年以上经验必看
  18. 知识蒸馏 | (1) 知识蒸馏概述
  19. C#实现图书管理系统(课程设计)——第二步、登陆界面
  20. 51Nod-2006 飞行员配对(二分图最大匹配,匈牙利算法)

热门文章

  1. <meta name=“robots“ content=“index,follow“>的解释
  2. hdu1686:KMP板子
  3. P4721 【模板】分治 FFT
  4. 【SDOI2013】项链【莫比乌斯反演】【Polya定理】【递推式求通项】【数论】
  5. Lawn of the Dead
  6. Super Jumping! Jumping! Jumping! HDU - 1087
  7. 牛客题霸 [合并二叉树] C++题解/答案
  8. 牛牛和牛可乐的赌约2
  9. [2020-11-23 contest]图(dfs剪枝),劫富济贫(字典树),小A的树(树形DP),游戏(贪心/斜率优化)
  10. P7408-[JOI 2021 Final]ダンジョン 3【贪心,树状数组】