import React from "react"; import Group from "../../../ui/Group/Group"; import { connect } from "react-redux"; import NotFoundError from "../../NotFoundError"; import './Settings.sass'; import Tabs from "../../../ui/Tabs/Tabs"; import TabItem from "../../../ui/Tabs/TabItem"; import Appearance from "./Appearance"; import General from "./General"; import Security from "./Security"; import { setUser } from "../../../store/ducks/currentUser"; enum TabsNames { General, Security, Appearance } type Props = { match: { params: { userId: string } } currentUser: UserType setUser: (user: UserType) => void } type State = { currentTab: TabsNames } class Settings extends React.Component { state: State = { currentTab: TabsNames.General } render() { const { currentUser, match: { params: { userId } }, setUser } = this.props; const { currentTab } = this.state if(parseInt(userId) !== currentUser.id) return ; return ( this.setState({ currentTab: TabsNames.General })} > Главное this.setState({ currentTab: TabsNames.Security })} > Безопастность this.setState({ currentTab: TabsNames.Appearance })} > Внешний вид {currentTab === TabsNames.General && ( )} {currentTab === TabsNames.Security && ( )} {currentTab === TabsNames.Appearance && ( )} ); } } export default connect( (state: StoreState) => ({ currentUser: state.currentUser }), dispatch => ({ setUser: (user: UserType) => dispatch(setUser(user)) }) )(Settings);