为什么我首先要得到零,并且只有在刷新页面后才需要什么?如何从页面顶部开始?这样就可以立即显示它,而不是在更新之后显示它。
如何从数据库(i.sidebarPos)获取布尔值?
import React, { useEffect, useState } from 'react';
import { connect } from 'react-redux';
// Importing components
import OptionsView from '../../layout/Options';
import withComponent from '../../hoc';
import { fethStyles, updateStyles } from '../../../store/actions';
const OptionsContainer = props => {
// Props
const {
stylesList,
fethStyles,
updateStyles
} = props;
const [classes, setClasses] = useState(null);
useEffect(() => {
fethStyles();
onHandleSelectSideMenu();
console.log(classes)
}, [fethStyles]);
// Выбор расположения сайдбара
const onHandleSelectSideMenu = () => {
return stylesList.map(i => {
updateStyles(i.id, !i.sidebarPos);
setClasses(i.sidebarPos);
});
};
return (
<OptionsView
onHandleSelectSideMenu={onHandleSelectSideMenu}
classes={classes}
/>
);
};
// Redux
const mapStateToProps = state => {
return {
stylesList: state.styles.stylesList
};
};
const mapDispatchToProps = (dispatch, ownProps) => {
const { api } = ownProps;
return {
fethStyles: fethStyles(api, dispatch),
updateStyles: updateStyles(api, dispatch)
};
};
export default withComponent()(
connect(mapStateToProps, mapDispatchToProps)(OptionsContainer)
);
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/16.6.3/umd/react.production.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.6.3/umd/react-dom.production.min.js"></script>
现在我得到的是null,不是true或false ...