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

定制网站对公司有什么好处30岁转行做网站编辑

定制网站对公司有什么好处,30岁转行做网站编辑,外贸网站论文,宁波网站建设哪个公司好组件之间通讯常用方案 1、通过props 2、通过context 3、通过发布订阅模式 4、通过Redux 后面会有专栏介绍 什么情况下使用发布订阅模式 a、当我们想要兄弟组件之间通讯#xff0c;而共同的父组件中又用不到这些数据时候#xff1b; b、当多个毫无相关的组件之间想要进行数据…组件之间通讯常用方案 1、通过props 2、通过context 3、通过发布订阅模式 4、通过Redux 后面会有专栏介绍 什么情况下使用发布订阅模式 a、当我们想要兄弟组件之间通讯而共同的父组件中又用不到这些数据时候 b、当多个毫无相关的组件之间想要进行数据的传递时候我们可以使用这种模式当然可以使用 Redux 进行状态管理 c、当我们使用的是通用型组件组件中只有通用功能而不用关注各个组件之间的业务代码逻辑时候 什么是发布订阅模式 发布订阅模式也称观察者模式是一种管理跨组件通讯的方案特别是在不想直接依赖于特定组件的时候。这种模式允许一个对象发布者通知多个其他对象订阅者而不必知道这些对象是谁或他们在哪里。 这种方案有助于组件之间解耦可以提高代码模块化和可维护性。 1、自定义发布订阅类 利用类自身的特性写通用的订阅事件、发布事件、取消订阅事件 // myComPubsuh 文件import { Component } from react;export default class MyComPubsuh extends Component {constructor(props) {super(props);this.events {}}subscribe(event, callback) {// 添加订阅事件if (!this.events[event]) {this.events[event] []}this.events[event].push(callback)}unsubscribe(event, callback) {// 卸载订阅事件if (this.events[event]) {this.events[event] this.events[event].filter(cb cb ! callback)}}pubilsh(event, data) {// 发布事件并执行订阅事件的回调函数if (this.events[event]) {this.events[event].forEach(callback callback(data));}} }export const myPubsh new MyComPubsuh()2、子组件A发布消息事件 使用 myPubsh 中的 publish 方法进行消息的发布 // ChildA 文件 import {useState} from react import { myPubsh } from ./myComPubsuh export default function ChildA() {const [message, setMessage] useState(躺平)// 通过按钮发布消息const handlePubilsh () {myPubsh.pubilsh(onabortMessage, message)}const handleInputChange (e) {setMessage(e.target.value)// 通过input 自身change 事件触发发布消息// 调用 发布订阅类中的 pubilsh 方法myPubsh.pubilsh(onabortMessage, message)}return (divh3组件A/h3p发布消息:{message}/pinput typetext value{message} onChange{handleInputChange} /button onClick{handlePubilsh}发布/button/div) } 3、子组件B订阅发布的消息 利用useEffect() Hook 自身的特性 第二个参数为空时候: a、渲染完成时候会加载执行一次 b、组件中任何属性更新时候都会执行一次 若 内部有return 函数代表组件卸载时候会执行 // ChildB 组件 import { useEffect, useState } from react import { myPubsh } from ./myComPubsuh export default function ChildB() {const [message, setMessage] useState()// 利用useEffect() hookuseEffect(() {const onHandleMsg (data) {setMessage(data)}// 订阅 消息myPubsh.subscribe(onabortMessage, onHandleMsg)return () {// 回调函数执行卸载myPubsh.unsubscribe(onabortMessage, onHandleMsg)}}, [])return (divh3组件B/h3p订阅组件A发布的信息/pp{message}/p/div) } 4、父组件中 调用两个 子组件 import ChildA from ./childA import ChildB from ./childB export default function index() {return (ChildA/ChildAhr /ChildB/ChildB/) }如图效果 这种发布订阅模式可以在任意组件中使用不会局限于兄弟组件父子组件祖孙组件多层级组件都可以实现应用 优点 a、组件之间解耦组件之间不需要彼此引用可以通过定义的发布订阅类进行通讯 b、简化状态管理组件只需要关注自己本身的业务其他事件由发布订阅类进行处理 c、异步通信发布-订阅模式通常支持异步消息传递这可以提高系统的响应性和效率 d、灵活性订阅者可以根据自己的需求选择订阅或取消订阅某个主题或频道。 e、扩展性由于发布者和订阅者是解耦的所以可以容易地增加更多的发布者或订阅者而不需要对现有系统进行大的修改。 缺点 a、内存泄漏使用的发布订阅方法在组件卸载时候没有进行注销会导致事件越来越多 b、状态跟踪不清晰复杂的业务场景下难以追踪状态的变更 c、复杂性随着订阅者数量的增加管理和维护订阅关系可能会变得复杂。 d、安全性由于发布者不直接与订阅者交互所以可能需要额外的机制来确保消息的安全性和完整性 e、消息积压和延迟如果订阅者无法及时处理收到的消息可能会导致消息在某处积压从而引发延迟或其他相关问题。 qiong yao qushi
http://www.hkea.cn/news/14427032/

相关文章:

  • 做海报有什么好的网站推荐自己的电脑做网站
  • 提高网站排名的方法展会电子商务网站如何建设
  • 学做网站容易吗濮阳招聘大濮网
  • 西部数码网站管理助手 v3.0ps快速做网站
  • 网站建设团队网站建设 试卷
  • 重庆企业站seo平面设计行业市场分析
  • 外贸数据分析网站网站建设财务怎么入账
  • 一站式+wordpresswordpress双栏主题开源
  • 旅游类网站设计路由器做网站终端
  • 合肥网站排名优秀设计作品赏析
  • 有做lol直播网站淘宝网是中国最大的c2c平台
  • 怎样学习做网站的编程wordpress水平菜单
  • 互联网接入服务商是seo教程有什么
  • ugc网站开发海南最新消息
  • 黄石网站建设国外家谱网站的建设
  • 企业做网站设计的wordpress 社交图标
  • 更改了网站关键词后要怎么做大连企业网站制作
  • 免费建设手机网站手机网站开发之列表开发
  • 做效果图展板网站互联网哪个专业前景好
  • wordpress站点标题看不到江门网站排名优化
  • 石家庄做网站价格电子商务网站方案
  • 一个网站开发时间官网网页制作
  • 公司做网站哪家好统一门户平台
  • 网站托管服务怎么收费东阿网站建设电话
  • 智慧软文网站苏州营销型网站建设方法
  • 做网站在哪里做做网站接口多少钱
  • 网站建设运营岗位职责免费职业技能培训网
  • 网站无障碍的建设方面空缺苏州做网站公司排名
  • 专门做网站的公司叫什么自己建站
  • 在北京建设教育协会的网站网站微商城的建设运营实践和思考