当前位置: 首页 > news >正文

网站制作代码南京百度网站推广

网站制作代码,南京百度网站推广,北京 网站建设 京icp,wordpress视频教程下载合成事件与原生事件 区别: 1. 命名不一样,原生用纯小写方式,react用小驼峰的方式 原生:onclick React的:onClick 2. 事件处理函数的写法不一样 原生的是传入一个字符串,react写法传入一个回调函数 3.…

合成事件与原生事件  区别:

1. 命名不一样,原生用纯小写方式,react用小驼峰的方式

        原生:onclick      React的:onClick

2. 事件处理函数的写法不一样

        原生的是传入一个字符串,react写法传入一个回调函数

3. 阻止默认行为方式不同

        原生:return false,    react中的:event.preventDefault()

class Toggle extends React.Component {constructor(props)super(props)this.state={ isToggleOn: true }// 为了在回调中使用this, 这个绑定是必不可少的this.handleClick = this.handleClick.bind(this)handleClick(){this.setState((prevState) => ({isToggleOn: !prevState.isToggleOn}))}    render(){return (// class的方法默认不会绑定this。如果没有绑定this.handleClick.bind(this) 并把它传入 onClick,this的值为undefined<Button onClick={this.handleClick}> // 2. 传入一个回调函数{this.state.isToggleOn ? 'ON' : 'OFF'}</Button> // 1. onClick小驼峰写法)}}

【 拓展:为什么需要绑定this 】

button按钮编译的过程:React.createElement()

// 伪代码
// 证明为什么绑定this
function creteElement (dom, params) {var domObj = document.createElement(dom)domObj.onClick = params.onClick // 后面的onClick(当前的onClick函数)赋值给前面的onClick, 这时,onClick执行的作用域是外层作用域。所以return出去的值找不到this.handleClick。[所以需要绑定this指定到当前的作用域]domObj.innerHTML = params.contentreturn domObj
}React.creteElement('button', {onClick: this.handleClick  
}, this.state.isToggleOn ? 'ON' : 'OFF')

如果不想绑定this的写法:

class Toggle extends React.Component {constructor(props)super(props)this.state={ isToggleOn: true }// 法1:bind绑定:为了在回调中使用this, 这个绑定是必不可少的// this.handleClick = this.handleClick.bind(this)handleClick = () => { // 法2:写成箭头函数,箭头函数没有作用域的this.setState((prevState) => ({isToggleOn: !prevState.isToggleOn}))}    render(){return (// class的方法默认不会绑定this。如果没有绑定this.handleClick.bind(this) 并把它传入 onClick,this的值为undefined<Button onClick={() => this.handleClick()}> // 2. 传入一个回调函数   法3{this.state.isToggleOn ? 'ON' : 'OFF'}</Button> // 1. onClick小驼峰写法)}}

. 为何React要用合成事件机制

1. 进行浏览器兼容、跨平台、事件代理(移动端和pc端的一些原生事件不一定完全兼容的)
2. 挂载到documnet,减少内存消耗,避免频繁绑定和解绑事件,也方便事件统一管理

3. 避免垃圾回收、react事件池

http://www.ds6.com.cn/news/1927.html

相关文章:

  • 小企业想做网站推广找哪家强设计网站推荐
  • 营销策划的步骤有哪些蜘蛛seo超级外链工具
  • 网站工商网监标百度推广登录网站
  • 珠海市 网站建设宁波seo关键词费用
  • 秦皇岛网站群发关键词谷歌账号
  • 济南网站推广排名2022年大事热点新闻
  • 做月季评分表的工程网站叫什么网店运营与推广
  • 学完ssm可以做哪些网站百度推广关键词排名在哪看
  • 有关做内购的网站网络公司网站建设
  • 中山好的网站建设公司上海百度推广排名
  • b2b网站推广优化怎么设计网站
  • dw做的网站怎么做后台实时热搜榜榜单
  • 自助建站系统步骤百度手机版下载
  • python培训机构哪家好北京seo排名收费
  • 一般做哪些外贸网站如何自己开发网站
  • 自己怎么做网站空间迅雷下载磁力天堂
  • 虚拟机wordpress教程视频seo指的是什么意思
  • 如何做好网站关键词优化网络营销案例具体分析
  • 重庆网站建设 渝seo怎么优化关键词排名
  • 手机网站违规禁止访问怎么办优化设计答案五年级下册
  • django 和 wordpress北京网站优化多少钱
  • 做网站.net和php哪个简单全网霸屏推广系统
  • 什么网站流量大杭州网站定制
  • 贵州网站建设找关键词的方法与技巧
  • 企业网站建设报价怎样建立自己的网站平台
  • 谷歌怎么把两个网站做反链长尾关键词挖掘词工具
  • b2c和b2b的区别郑州有没有厉害的seo
  • 广西城乡住房建设厅网站首页直播代运营公司
  • 专业做礼品团购的网站系统优化app
  • mugeda做网站排名第一的助勃药