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

如何在Redux中调度函数?

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

如何在Redux中调度函数?

我的建议是不要在状态中存储冗余(派生的)信息。这意味着您不需要(也不应该!)将总数存储在状态中。这是一个问题的主要原因是,它给您的州提供了一个自相矛盾的机会……如果您州的

total
密钥不等于项目总数的总和,那么您将有一个大问题!

相反,您可以创建一个计算总数的函数,并在需要时简单地调用它。例如:

const calculateTotal = state => {  let total = state.cart.reduce((total, item) => {    return total + item.quantity * item.product.price   }, 0);  // Assuming you just have one coupon, you could maintain a boolean in state  if (state.hasCoupon) {    total -= 50;  }  return total;}

然后,在代码中需要获取总数的任何位置,都可以简单地使用此函数。在中包含这种功能并不罕见

mapStateToProps

const mapStateToProps = state => ({  total: calculateTotal(state);});

如果最终遇到很多派生状态,则使用诸如Reselect之类的选择器库可能会带来一些好处,该选择器库可以帮助您构建从其他选择器派生的选择器,并实现
备忘录 以提高性能。



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

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

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