有哪些推送平台支持react native

有哪些推送平台支持react native,第1张

支持react native的推送平台有很多,极光推送是国内最早的第三方移动消息推送服务供应商,累计为超过150万移动应用提供服务极光推送 系统性能稳定,送达率高,延迟率低还支持用户分群的推送功能。

React Native ,两个重点app。uiexplorer,这个是facebook把rn的所有功能的demo项目。另一个是f8app,f8app是facebook为了推广rn在f8大会上开源的一款app。

f8app使用了redux,持久化,flow,graphql等等技术....包含注册登录列表详情等等常用功能,还有日志,第三方接口使用。代码比较规范,架构合理。

极光推送个性化推送满足用户多种推送需要,有效提升用户体验,利用大数据人工智能技术,实现智能用户分群,提升消息点击率,推送安全包确保推送内容准确,拒绝运营事故。

1 .SyntheticEvent说到底是用来模拟原生事件的,如果我们自己实现一个事件来模拟原生事件.我们需要模拟什么?

1 .dispatchConfig

2 .事件公用属性定义

1 .oEvent.stopImmediatePropagation()//Immediate[ɪˈmi:diət] //当一个元素绑定多个事件处理程序的时候,事件会按照顺序全部执行,如果不想让后面的事件处理程序执行,就在当前事件里加这个方法,就不执行后面的事件处理程序了

2 .oEvent.preventDefault()(在ie低版本中用oEvent.returnValue=true)//阻止事件的默认行为,比如阻止a的href链接。在智能设讲用return false。

2 .eventPhase

3 .bubbles:返回一个布尔值,表示当前事件是否会向DOM树上层元素冒泡

4 .cancel:表示改事件是否能被取消

5 .composed:表示是否可以穿过Shadow DOM和常规DOM之间的元素进行冒泡

6 .deepPath:一个由事件流所经过的DOM节点组成的数组

7 .defaultPrevented:一个布尔值,表示event.preventdefault方法是否取消了事件的默认行为

8 .timeStamp:事件创建的时间戳.

1 .插件对事件做分类,不同类型的事件的属性也不同

2 .主要有以下几种

3 .SyntheticMouseEvent 就是 SyntheticEvent 的一个派生类,由 ReactDOM 实现。鼠标事件

1 .SyntheticEvent 中有 preventDefault,stopPropagation,persist,isPersistent,destructor

2 .preventDefault

2 .stopPropagation:同样调用了原生事件的 stopPropagation 方法。大家可能发现了,此时事件已经冒泡到 Document 对象上了,调用原生事件的 stopPropagation 已经太晚了,这么做的目的是改变原生事件对象中的一些属性的值,保持两个事件属性值的统一。 同样,使用了 event.cancelBubble = true 的方式来兼容 IE

3 .persist:这个现在已经无效了.React 17之后不在使用事件池了

4 .dectructor:销毁事件属性,将事件的属性置为初始值

1 .React之前将所有的事件都绑定到了document,实际上的React是没有层级的,这样破坏了事件的捕获和冒泡机制

2 .实现原理:具体的做法是,inst 是触发事件的 fiber 对象,从这个 fiber 对象开始,一路向上,直到找到 HostComponent,这样就找到了事件传播的整条路径,然后从根节点自上而下触发 captured,之后自下而上触发 bubbled

1 .SytheticEvent本质上是对nativeEvent的一次封装.目的是为了达到与nativeEvent相同甚至更好的体验基础.保留进一步扩展的可能性,最终实现事件的跨平台

2 .SyntheticEvent 采用派生的方式,将事件具体的属性交由 SyntheticEvent 的子类来实现,自己只维护事件必须的字段

3 .为了避免 SyntheticEvent 对象频繁创建,更好的利用内存资源,提高性能,SyntheticEvent 会将事件对象缓存起来,最大缓存个数是 10

4 .

1 .ES6 Class写法中箭头函数可以不用单独的使用bind方式来绑定this,可以自动绑定

2 .useRef.current.addEventListener('click')这样来绑定

3 .尽量避免在React中混用合成事件和原生事件DOM事件.另外用reactEvent.nativeEvent.stopPropagation()来组织冒泡是不行的.阻止React冒泡的行为只能用React合成事件系统中.而且没办法阻止原生事件的冒泡.

4 .相反,原生事件中的阻止冒泡行为,却可以阻止React合成事件的传播

5 .原理:react的合成事件系统仅仅是原生DOM事件系统的一个子集.仅仅实现了DOM level3的事件接口,统一了浏览器的兼容问题


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/7489411.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-06
下一篇2023-04-06

发表评论

登录后才能评论

评论列表(0条)

    保存