小编mob*_*obo的帖子

验证Redux Store中的数据

我正在尝试在redux商店中验证表单中的数据.什么是最好的方法来解决这个问题.到目前为止我有一些想法:

  1. 验证操作必须绑定到某种类型的侦听器,如onBlur或onChange.一旦表单组件模糊,它就会被验证.但是,验证函数可以1)仅隔离验证该字段或2)必须传递完整的表单状态.此外,动作创建者不能/不应该访问新状态,因此我只能更新现有数据,并且我无法将验证器绑定到更新状态的内容.一个好处是,我可以通过调用验证器动作创建器并返回一个promise(使用redux-promise/thunk)来执行异步验证.

  2. Reducer验证自己的数据.reduce的第1部分将更新数据,第2部分将分析状态并更新错误.然而,这与减速器纯度相反,因为更新状态的一部分然后更新另一部分状态.因此,我必须确保在更新状态后运行验证程序.

  3. 使用选择器从状态派生错误.如果显示无效/有效,只显示错误,则数据本身不会更改.但是,由于选择器是同步的,我不能进行任何异步验证.

reactjs redux

6
推荐指数
1
解决办法
1460
查看次数

Multiava表与番石榴

最近我发现了番石榴的奇迹.我遇到过一个实例,我想使用Multimap和Table的组合,基本上是一个带有两个键的Multimap.

是否有一个番石榴类可以做到这一点,还是我应该去Tabe<R, C, Map<T>>

java guava

5
推荐指数
1
解决办法
3351
查看次数

迭代C++映射的差异

第一

我有一个包含绘图功能的类Node.节点包含在地图中,例如:

map<std::string, Node*>
Run Code Online (Sandbox Code Playgroud)

当我使用迭代器绘制地图中的所有节点时,没有任何反应.(gc是我传递给绘图函数的图形上下文)

std::map<std::string, Node*>::const_iterator itr = _Nodes.begin();
while(itr != _Nodes.end())
{
    itr->second->setX(100);
}
Run Code Online (Sandbox Code Playgroud)

但这不起作用.但是,如果我构造我的迭代器不同,它的工作原理.

std::map<std::string, Node*>::const_iterator end = _Nodes.end();
for(std::map<std::string, Node*>::const_iterator it = _Nodes.begin(); it != end; ++it){
    it->second->draw(gc);
    it->second->setSize(100);
}
Run Code Online (Sandbox Code Playgroud)

我的问题是为什么一个工作而不是另一个?

第二个问题是什么是存储NodeManager类中的所有节点而不必命名它们的替代方法?只是一个简单的清单?

c++ iterator map

0
推荐指数
1
解决办法
200
查看次数

创建列表数组

有没有办法在Java中组合列表和数组?我正在为2D数组而不是2D列表存储tile图的数据,因为这样我可以为它们定义一个set size.它到目前为止工作,因为每个位置都有一个瓦片,只能有一个物体占据它.现在我想为单个磁贴添加多个效果,但Java不允许创建带有泛型的数组,因此没有ArrayList [] [].如果每个tile都是它自己的对象,它可能只有自己的ArrayList效果,但我真的想避免这种情况.另外我不知道每个瓷砖可能有多少效果,所以我不能只定义一个3D数组.

有关如何解决此问题的任何建议.我想要更多面向设计的建议,而不是克服阵列/泛型问题.

java arrays list

0
推荐指数
1
解决办法
142
查看次数

标签 统计

java ×2

arrays ×1

c++ ×1

guava ×1

iterator ×1

list ×1

map ×1

reactjs ×1

redux ×1