gpt4 book ai didi

javascript - 将 Redux Store 中的数据存储在另一个数据结构中

转载 作者:行者123 更新时间:2023-11-27 23:19:32 25 4
gpt4 key购买 nike

我的应用将数据从 Firebase 加载到 Redux 存储中。它作为包含数百个嵌套对象的对象加载。

为了渲染该数据的表格组件(特别是 this one ),我必须将其转换为对象数组。

我当前的解决方案是简单地在表组件 mapStateToProps() 中进行转换,如下所示(使用 lodash 库):

function mapStateToProps(state) {

return {
listingsData: _.values(state.config)
}
}

这似乎有效,我在 Firebase 仪表板中所做的更改几乎立即成功地呈现在我的应用中。

我的问题是:这种做法是否会导致我的应用程序(数组 + 存储)的内存消耗增加 2 倍?

对于几百行来说这不是问题,但我预计一些用户会有几千行数据。

如果是 2 倍内存,是否有更有效的方法?

ETA:我认为这个答案将来可能仍然有帮助,但回想起来我应该只写一个小测试。此测试支持下面接受的答案:

var x = {a:{var:1}, b:{var:2}, c:{var:3}};
var y = _.values(x);

console.log(x, y); //values match

x.a.var = 99;

console.log(x, y); //values still match

最佳答案

据我所知,loadash 中的 _.values 函数(不适用于 loadash),在您的情况下,您并不是将内存加倍(克隆对象),而是创建对存储的对象的引用数组没问题。

您可能需要考虑的是在引用之前过滤这些对象,而不是始终创建对每个对象的引用。

关于javascript - 将 Redux Store 中的数据存储在另一个数据结构中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35496657/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com