如何使用setStore修改SolidJS Store中二维数组的指定值?
SolidJS Store嵌套数组对象的更新方法
对于你创建的这种嵌套数组结构的SolidJS Store,你可以通过路径参数精准定位到目标属性进行更新:
直接赋值更新
使用索引路径指定要修改的位置,直接传入新的属性值:
setStore(0, 0, { foo: 2 });
函数式更新(适合基于旧值修改的场景)
如果需要参考旧值来更新,可以传入一个更新函数:
setStore(0, 0, prev => ({ ...prev, foo: 2 }));
原理说明:setStore的前两个参数依次对应外层数组索引[0]和内层数组索引[0],第三个参数用于指定该位置对象的更新内容——直接传对象会合并属性,传函数则可以基于旧对象生成新对象。
内容的提问来源于stack exchange,提问作者JJ Pell
相关产品推荐
相关产品推荐

