Como esperar até que todas as propriedades da matriz síncrona recebida sejam definidas no React-Redux?
Não consigo fazer a função map () para renderizar porque o comprimento da matriz é sempre 0, mesmo que eu obtenha dados da matriz. Existe uma maneira de definir o intervalo de tempo até que a matriz assíncrona seja carregada corretamente?
Este é o meu código:
function ShortcutComponent({ usershortcuts }) {
console.log(usershortcuts); // I get an array
console.log(usershortcuts.length); //I get 0
return (
<Button ui="headerButton" arrow={false} ripple={false} iconCls="icon-directions" border={false} handler={() => this.loadData()}>
<Menu title="Shortcuts">
{usershortcuts.map((item) => {
<MenuItem key={item.id} iconCls={item.shortcutDefinition.iconCls} text={item.shortcutDefinition.description} />
}
</Menu>
</Button>
)
}
const mapStateToProps = (state) => {
return {
usershortcuts: state.usershortcuts
}
};
const mapDispatchToProps = (dispatch) => {
return {
actions: bindActionCreators(usershortcutAction, dispatch)
}
}
export default connect(mapStateToProps, mapDispatchToProps) (ShortcutComponent);
Como evidência aqui está a imagem: