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

淮安市网站建设app营销策划方案

淮安市网站建设,app营销策划方案,国家森林公园网站建设,wordpress食品模板目录 扩展学习资料 React事件和DOM事件 和传统DOM事件处理异同 this关键字的处理 this关键字 在JSX中使用bind方法 在构造函数中使用bind方法 使用箭头函数【推荐】 向事件处理程序传递参数【不跨组件】 向父组件传递参数 /src/App.js /src/components/listItem.jsx…

目录

扩展学习资料

React事件和DOM事件

 和传统DOM事件处理异同

this关键字的处理

this关键字

在JSX中使用bind方法

在构造函数中使用bind方法

使用箭头函数【推荐】

向事件处理程序传递参数【不跨组件】

向父组件传递参数

@/src/App.js

@/src/components/listItem.jsx

React事件机制

DOM事件

React事件

React事件要素

小结

练习


扩展学习资料

预习资料名称

链接

备注

源码分析事件

React源码分析6 — React合成事件系统 - 知乎

扩展阅读

合成事件

http://react.html.cn/docs/events.html

React事件和DOM事件

import React, { Component } from 'react';
import style from './listitem.module.css';
import classnames from 'classnames/bind';
const cls = classnames.bind(style);
let count = 0;
class ListItem extends Component {// 类的构造函数// eslint-disable-next-line no-useless-constructorconstructor(props) {// JS规定,子类的构造函数必须先调用一下super函数// =>类似于call的继承:在这里super相当于把Component的constructor给执行了,// 并且让方法中的this是ListItem的实例,// super当中传递的实参都是在给Component的constructor传递。super(props);// super 除了在 constructor 里直接调用外还可以使用 super.xxx(…) // 来调用父类上的某个原型方法,这同样是一种限定语法。}handleDecrease(e) {console.log('----', e);}handleAdd() {console.log('++++');}render() {return (<div className='row mb-3'><div className='col-6 themed-grid-col'><span style={{ fontSize: 22, color: '#710000' }}>{this.props.data.name}</span></div><div className='col-1 themed-grid-col'><span className={cls('price-tag')}>¥{this.props.data.price}</span></div>{/* <div className={"col-2 themed-grid-col" + ( count ? '' : '-s') } >
{this.manageCount()}</div> */}<div className={`col-2 themed-grid-col${count ? '' : '-s'}`}><buttononClick={this.handleDecrease}type='button'className='btn btn-primary'>-</button><span className={cls('digital')}>{this.manageCount()}</span><buttononClick={this.handleAdd}type='button'className='btn btn-primary'>+</button></div></div>);}manageCount() {return count ? count + '个' : count;}
}
export default ListItem;

 和传统DOM事件处理异同

this关键字的处理

this关键字

  • 在JSX中使用bind方法

<button// 这样写在handleDecrease函数中就可以使用this了onClick={this.handleDecrease.bind(this)}type='button'className='btn btn-primary'>-</button>
  • 在构造函数中使用bind方法

constructor(props) {super(props);// 这样写在handleAdd函数中就可以使用this了this.handleAdd = this.handleAdd.bind(this);}
  • 使用箭头函数【推荐】

// 这样写在handleAdd函数中就可以使用this了
handleAdd = () => {count++;console.log('++++', this);
};

向事件处理程序传递参数【不跨组件】

方法一

onClick={this.handleDecrease.bind(this, 9)}
const count = 0;
doSomethingWithCount() {if (count < 0) count = 0;
}
handleDecrease(id, event) {console.log('----id:', id, this, event);count--;this.doSomethingWithCount();
}

方法二【推荐】

<buttononClick={(event) => {this.handleDecrease(9, event);}}type='button'className='btn btn-primary'>-
</button>

向父组件传递参数

@/src/App.js

在父组件定义好事件处理函数,并通过props向子组件传递

//...
class App extends Component {// 1.1定义handleDelete = (id) => {console.log("删除id: ", id);};render() {return (<div className="container">{listData.length === 0 && (<div className="text-center">购物车是空的</div>)}{listData.map((item) => {return (// 1.2传递<ListItem key={item.id} data={item} onDelete={this.handleDelete} />);})}</div>);}
}
//...

@/src/components/listItem.jsx

在子组件react元素上,绑定props传入的函数,并带入参数

// ...
onClick={()=> {this.props.onDelete(this.props.data.id)}}onClick={this.props.onDelete.bind(this,this.props.data.id)}
// ...

React事件机制

DOM事件

【Dom事件的基本模型】事件捕获=>目标对象本身的事件处理=>冒泡

 行为委托:就是把子元素的事件处理委托给父级元素进行处理

React事件

React事件机制抽象图

 

react会把所有的事件绑定到document上面,而不是某一个元素上面,统一的使用事件监听,并在冒泡阶段处理事件,所有当挂载卸载组件的时候,只需要在统一的事件监听位置增加或删除对象,因此会极大的提高效率。

当事件触发的时候,我们的组件会生成一个合成事件,

然后传递到document当中,

document会通过Dispatch Event回调函数依次执行dispatcher中同类型监听函数,

事件注册是在组件生成的时候我们将listen dom中的所有的事件对应的原生事件都注册到document的监听器当中(ListenerBank中)并以key作为索引

好处就是能将可能要触发的事件分门别类

React事件要素

  • React事件是合成事件,不是DOM原生事件
  • 在document监听所有的支持事件
  • 使用统一的分发函数dispatchEvent指定事件的执行

小结

  1. 原生事件差异
  2. 事件处理中this的注意事项
  3. 事件处理如何传递参数
  4. 父子组件间事件参数的传递
  5. React事件机制

练习

【题目1】 使用bind方法和箭头函数传递参数。

【题目2】 描述事件在react中的处理方式。


文章转载自:
http://www.morning.ftmp.cn.gov.cn.ftmp.cn
http://www.morning.wjdgx.cn.gov.cn.wjdgx.cn
http://www.morning.bsjxh.cn.gov.cn.bsjxh.cn
http://www.morning.hgwsj.cn.gov.cn.hgwsj.cn
http://www.morning.xinyishufa.cn.gov.cn.xinyishufa.cn
http://www.morning.rzmlc.cn.gov.cn.rzmlc.cn
http://www.morning.nwbnt.cn.gov.cn.nwbnt.cn
http://www.morning.yrjkp.cn.gov.cn.yrjkp.cn
http://www.morning.ddfp.cn.gov.cn.ddfp.cn
http://www.morning.cbynh.cn.gov.cn.cbynh.cn
http://www.morning.rnqnp.cn.gov.cn.rnqnp.cn
http://www.morning.mgbsp.cn.gov.cn.mgbsp.cn
http://www.morning.rckmz.cn.gov.cn.rckmz.cn
http://www.morning.gydth.cn.gov.cn.gydth.cn
http://www.morning.hsjrk.cn.gov.cn.hsjrk.cn
http://www.morning.zxqxx.cn.gov.cn.zxqxx.cn
http://www.morning.lsnbx.cn.gov.cn.lsnbx.cn
http://www.morning.fthqc.cn.gov.cn.fthqc.cn
http://www.morning.ygxf.cn.gov.cn.ygxf.cn
http://www.morning.qqbjt.cn.gov.cn.qqbjt.cn
http://www.morning.bdtpd.cn.gov.cn.bdtpd.cn
http://www.morning.gmgnp.cn.gov.cn.gmgnp.cn
http://www.morning.qzxb.cn.gov.cn.qzxb.cn
http://www.morning.pcngq.cn.gov.cn.pcngq.cn
http://www.morning.ybgpk.cn.gov.cn.ybgpk.cn
http://www.morning.mxtjl.cn.gov.cn.mxtjl.cn
http://www.morning.mcqhb.cn.gov.cn.mcqhb.cn
http://www.morning.lphtm.cn.gov.cn.lphtm.cn
http://www.morning.lfqtp.cn.gov.cn.lfqtp.cn
http://www.morning.hsjfs.cn.gov.cn.hsjfs.cn
http://www.morning.trsmb.cn.gov.cn.trsmb.cn
http://www.morning.xkwyk.cn.gov.cn.xkwyk.cn
http://www.morning.fchkc.cn.gov.cn.fchkc.cn
http://www.morning.dskzr.cn.gov.cn.dskzr.cn
http://www.morning.wqhlj.cn.gov.cn.wqhlj.cn
http://www.morning.bdwqy.cn.gov.cn.bdwqy.cn
http://www.morning.sskkf.cn.gov.cn.sskkf.cn
http://www.morning.hcwlq.cn.gov.cn.hcwlq.cn
http://www.morning.kkzwn.cn.gov.cn.kkzwn.cn
http://www.morning.ldzss.cn.gov.cn.ldzss.cn
http://www.morning.qrksj.cn.gov.cn.qrksj.cn
http://www.morning.frtb.cn.gov.cn.frtb.cn
http://www.morning.tlpgp.cn.gov.cn.tlpgp.cn
http://www.morning.nxbkw.cn.gov.cn.nxbkw.cn
http://www.morning.ryznd.cn.gov.cn.ryznd.cn
http://www.morning.fgkwh.cn.gov.cn.fgkwh.cn
http://www.morning.dpjtn.cn.gov.cn.dpjtn.cn
http://www.morning.wyjpt.cn.gov.cn.wyjpt.cn
http://www.morning.qrksj.cn.gov.cn.qrksj.cn
http://www.morning.yrnll.cn.gov.cn.yrnll.cn
http://www.morning.nlffl.cn.gov.cn.nlffl.cn
http://www.morning.trjdr.cn.gov.cn.trjdr.cn
http://www.morning.xqmd.cn.gov.cn.xqmd.cn
http://www.morning.gsjfn.cn.gov.cn.gsjfn.cn
http://www.morning.fdzzh.cn.gov.cn.fdzzh.cn
http://www.morning.dxpzt.cn.gov.cn.dxpzt.cn
http://www.morning.lcmhq.cn.gov.cn.lcmhq.cn
http://www.morning.tbqbd.cn.gov.cn.tbqbd.cn
http://www.morning.ztrht.cn.gov.cn.ztrht.cn
http://www.morning.nzfjm.cn.gov.cn.nzfjm.cn
http://www.morning.kbdrq.cn.gov.cn.kbdrq.cn
http://www.morning.qxnlc.cn.gov.cn.qxnlc.cn
http://www.morning.zphlb.cn.gov.cn.zphlb.cn
http://www.morning.jhyfb.cn.gov.cn.jhyfb.cn
http://www.morning.mlbn.cn.gov.cn.mlbn.cn
http://www.morning.klpwl.cn.gov.cn.klpwl.cn
http://www.morning.mnygn.cn.gov.cn.mnygn.cn
http://www.morning.mrlkr.cn.gov.cn.mrlkr.cn
http://www.morning.rpjyl.cn.gov.cn.rpjyl.cn
http://www.morning.sdktr.com.gov.cn.sdktr.com
http://www.morning.ffbl.cn.gov.cn.ffbl.cn
http://www.morning.qwdlj.cn.gov.cn.qwdlj.cn
http://www.morning.prxqd.cn.gov.cn.prxqd.cn
http://www.morning.jnvivi.com.gov.cn.jnvivi.com
http://www.morning.cwnqd.cn.gov.cn.cwnqd.cn
http://www.morning.wlsrd.cn.gov.cn.wlsrd.cn
http://www.morning.nhlyl.cn.gov.cn.nhlyl.cn
http://www.morning.kbntl.cn.gov.cn.kbntl.cn
http://www.morning.mhnb.cn.gov.cn.mhnb.cn
http://www.morning.ylyzk.cn.gov.cn.ylyzk.cn
http://www.tj-hxxt.cn/news/13555.html

相关文章:

  • 美食网站建设需求分析怎么做营销推广方案
  • 一元购网站怎么做秦洁婷seo博客
  • 做设计的都用那些网站怎样做电商 入手
  • 济南 域名注册 网站建设百度应用商店app下载安装
  • seo网站诊断优化流程怎么进行网络推广
  • 上海自适应网站制作百度网站首页提交入口
  • 快速的企业微信开发整站seo排名费用价格
  • 山东省威海市文登区建设局网站广告推广计划
  • 做果蔬零售的网站广告公司推广
  • 徐州做网站的公司有哪些seo外包杭州
  • dede推荐评级网站模版上海高端seo公司
  • 厦门做企业网站seo建设
  • 临沂网站建设怎么样手机怎么建自己的网站
  • 怎么修改自己的网站做互联网推广的公司
  • 英文外贸网站制作郑州seo服务公司
  • 做时时彩网站需要什么seo中文含义
  • 向国旗致敬做时代新人网站百度竞价点击神器下载安装
  • 有哪些做简历的好网站镇江关键字优化公司
  • 怎么做赌博网站的代理竞价推广员月挣多少
  • 怎么做网站的签约编辑网店推广营销方案
  • 建设网站制作公司如何选择班级优化大师头像
  • 东莞企业网站广州seo优化排名公司
  • 做网站建设的网站成都网站排名生客seo怎么样
  • mcms怎么做网站公司怎么推广网络营销
  • 建设局网站授权委托书信息推广
  • 网站到期后如何转域名2024小学生时事新闻十条
  • 什么是网站的权重东莞关键词排名推广
  • 招代理的网站要怎么做的巨量算数关键词查询
  • 3合1网站建设哪家好乐陵市seo关键词优化
  • 一个企业网站文章多少适合私域营销