栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

在React组件和服务之间进行通信的最佳实践是什么?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

在React组件和服务之间进行通信的最佳实践是什么?

当您 选择不使用Flux / Redux时 ,请执行以下操作:

创建一个应该包装所有其他组件的 外部 组件。该组件也称为 高级组件控制器视图
。该组件应使用HTTP库与您的微服务通信(我个人很喜欢Axios)。我建议您创建一个包装Axios的客户端API对象。您的高阶组件可以引用此客户端API,因此与HTTP库无关。我还要把这个客户端API的参考的

window
对象
dev
模式,所以你可以做
window.clientApi.fetchSomething()
Chromeconsole
,使调试更加方便。

使所有其他组件(ChatBox,AvatarBox和NewsStream) 受到控制 。如果您不熟悉此概念,则表示他们通过 道具
获得了他们所需的一切,并且避免保持状态。这些组件不应调用微服务本身。这是高阶组件的责任。为了进行交互,这些组件应将 事件处理程序 作为道具接收。

这样对吗?它将提供干净的责任管理模型,但是使用http请求加载每个组件的内容会给性能带来疑问

通过 不允许每个组件直接与微服务联系,
可以避免性能问题。如果您的高阶组件编译了所有需要的信息,并进行了尽可能少的HTTP调用,那么使用这种方法应该会很好。

通常建议使用Flux / Redux,但是如果您选择退出,这就是解决方法。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/409796.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号