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

莱芜金点子信息港交友seo常见优化技术

莱芜金点子信息港交友,seo常见优化技术,WordPress蜘蛛爬行插件,3d动画制作软件免费需求#xff1a; 在一个页面下有多个子tab在某些tab 下#xff0c;或者父节点的数据更新的时候#xff0c;其他子tab 或者父节点也要同步更新 进程#xff1a; 正常情况下会把所有用到的数据都移动到父节点#xff0c;修改行为也都放在父节点但如果这样的话父节点的数据…需求 在一个页面下有多个子tab在某些tab 下或者父节点的数据更新的时候其他子tab 或者父节点也要同步更新 进程 正常情况下会把所有用到的数据都移动到父节点修改行为也都放在父节点但如果这样的话父节点的数据会非常的多而且有可能只是某两个子节点的数据需要更新这就很麻烦换一个思路所有的数据都放在各自子节点但是在某个变化发生的时候触发一下更新逻辑那又回到之前的那个问题了需要每一个子节点都传入对应的触发函数再换一个逻辑增加一个全局的hook 并绑定上对应的事件在你想要触发更新的时候调用一下这个hook 行为如果有绑定的事件的话就会触发对应事件 //eventhook type eventName string | Symbolconst eventMap new MapeventName, ArrayFunction()const addListenerByName (name: eventName, func: Function) {if (typeof func ! function) {return ;}const listeners eventMap.get(name) || []if (!listeners.includes(func)) {eventMap.set(name, [...listeners, func])} }const removeListenersByName (name: eventName, func: Function) {const listeners [...(eventMap.get(name) || [])]eventMap.set(name, listeners.filter(f f ! func)) }const triggerEventByName (name: eventName) {const listeners eventMap.get(name) || []listeners.forEach(f f()) }type useEventReturn {addListener: (func: Function) () void, // 调用返回的Function会remove监听removeListeners: (func: Function) void,triggerEvent: () void, } /*** 记得清除副作用* param evenetName* returns*/ export const useEvent (name: eventName init): useEventReturn {return {addListener: func {addListenerByName(name, func)return () removeListenersByName(name, func);},removeListeners: func removeListenersByName(name, func),triggerEvent: () triggerEventByName(name),}; }使用的时候 export 一个固定的名字 export const UPDATEUSERDATAEVENTNAME Symbol(event_name)use 这个hook const { addListener } useEvent(UPDATEUSERDATAEVENTNAME)在需要被监听的地方在初始化的时候加入对应的监听逻辑 useEffect(() addListener(() actionRef.current?.reload()), [])在需要触发这个监听逻辑的地方加入const { triggerEvent } useEvent(UPDATEUSERDATAEVENTNAME)并触发这个监听 useEffect(() {triggerEvent()}, [userId] )这个做法的好处是就不需要往子组建传一堆东西了而且也做到了更好的解耦 拓展 在使用这个方法的时候需要一个全局唯一的名字所以用到了 SymbolSymbol是一个绝对唯一的常亮极端的例子 Symbol(“test”) ! Symbol(“test”)
http://www.pierceye.com/news/383992/

相关文章:

  • 凡科建站如何制作论坛备案网站需要多久
  • 网站建设的公司哪家是上市公司专业外贸网站制作
  • 建站公司杭州免费投票网站制作
  • 网站优化公司效果网络营销毕业后做什么工作
  • 移动互联网的应用论文可以优化网络的软件
  • 网站建设软件哪个最好郑州广告设计与制作公司
  • 浦口区网站建设售后保障如何维护网站
  • 企业网站建设 安全合肥做网站加盟
  • 水果网络营销策划方案电商网站怎样优化
  • 免费数据源网站wordpress主页面
  • 做网站百度收费吗青岛冠通市政建设有限公司网站
  • 菜鸟建网站福建福州罗源建设局网站
  • 企业内网网站制作自己的网站多少钱
  • 关于公司网站建设的申请wordpress站群功能
  • 外贸做企业什么网站珠海的网站建设
  • 做网站教程百度云外贸soho建站公司
  • 上海市网站建设网站增加导航栏
  • 电子政务网站模版网站制作排名优化
  • 大足网站建设wordpress本地很慢
  • 企业门户网站模板html上线同安区建设局网站
  • 有些人做网站不用钱的,对吗?手机网站建立教程
  • 自适应网站主要用什么做株洲网站设计公司
  • 漂亮大气的装潢室内设计网站模板 单页式html5网页模板包金山网页设计
  • 沈阳养老保险网站手机网站建设ppt
  • 网站培训视频宝安新闻
  • 上海外贸建站推广公司服务专业的网站建设公司
  • 网站上传不了wordpress女孩学电子商务专业好就业吗
  • 石家庄网站开发工程师招聘网蜘蛛互联网站建设
  • 企业网站营销策划衡水企业做网站费用
  • 邯郸网站建设渠道通化网站建设公司