Javascript 当redux存储更改时更新列表
当我的redux商店发生变化时,我试图更新列表,但由于一些奇怪的原因,它没有。我必须手动刷新页面才能看到我的更改。下面是我的列表组件和行渲染器的片段Javascript 当redux存储更改时更新列表,javascript,reactjs,redux,react-redux,react-virtualized,Javascript,Reactjs,Redux,React Redux,React Virtualized,当我的redux商店发生变化时,我试图更新列表,但由于一些奇怪的原因,它没有。我必须手动刷新页面才能看到我的更改。下面是我的列表组件和行渲染器的片段 {({onRowsRendered,registerChild})=>( {({高度,宽度})=>( )} )} _行渲染器=({index,key,style})=>{ const{loadedRowsMap,selected}=this.state; const row=this.getDatum(索引); 让内容; 如果(loadedRo
{({onRowsRendered,registerChild})=>(
{({高度,宽度})=>(
)}
)}
_行渲染器=({index,key,style})=>{
const{loadedRowsMap,selected}=this.state;
const row=this.getDatum(索引);
让内容;
如果(loadedRowsMap[索引]==状态\u已加载){
内容=行;
}否则{
内容=(
);
}
返回(
);
};是的,我遇到了同样的问题。这是因为当您这样做时,对对象的引用不会改变
const row = this.getDatum(index);
let content;
if (loadedRowsMap[index] === STATUS_LOADED) {
content = row;
}
看一看 列表中的任何道具是否正在更改?我看到您有rowCount={visibleRequest.length}
和rowCount={rowCount}
。rowCount
是否保持不变?试着将一个道具传递给列表
,当你想触发重播时,它会发生变化,如果你不想改变行数
@Shizam Gupta,我不明白你的意思,它可以是这些道具之外的任何道具。你能试着更好地解释一下吗。谢谢。对对象的引用实际上没有改变。当你这样做的时候。更新对象时,需要更改对对象的引用。这样,页面将使用更新的对象值重新呈现