Ответы пользователя по тегу JSON
  • React this.setState, как задать number?

    IDONTSUDO
    @IDONTSUDO Автор вопроса
    ЧСВ программистов идет в комплекте с первой IDE.
    Все дело было в моем не допонимании.

    export default class Example extends PureComponent {
      constructor(){
        super()
          this.state = {
                statistic:[], //state начал принимать массив обьектов
                redirectToSignin: false,
                error: ""
      }
    }
      
      componentDidMount(){
        const token = isAuthenticated().token
        const UserId = isAuthenticated().user._id
        getStatistic(UserId,token)
        .then(data =>{
          if(data){
              this.setState({statistic:data}) //Вот он его берет
          }else{
              this.setState({user: data})
          }
      })
    
      }
      render() {
        const statistic = this.state //Импортируем из state массив и выводим его в charty график.
        const data = [
          {
            name: 'Декабарь', uv: this.state.statistic.December, pv: 2400, amt: 2400,
          },
          {
            name: 'Февраль', uv: this.state.statistic.February, pv: 1398, amt: 2210,
          },
          {
            name: 'Март', uv: this.state.statistic.March, pv: 9800, amt: 2290,
          },
          {
            name: 'Апрель', uv: this.state.statistic.April, pv: 3908, amt: 2000,
          },
          {
            name: 'Май', uv: this.state.statistic.May, pv: 4800, amt: 2181,
          },
          {
            name: 'Июнь', uv: this.state.statistic.June, pv: 3800, amt: 2500,
          },
          {
            name: 'Июль', uv: this.state.statistic.July, pv: 4300, amt: 2100,
          },
          {
            name: 'Август', uv: this.state.statistic.August, pv: 4300, amt: 2100,
          },
          {
            name: 'Сентябрь', uv: this.state.statistic.September, pv: 4300, amt: 2100,
          },
          {
            name: 'Октябрь', uv: this.state.statistic.October, pv: 4300, amt: 2100,
          },
          {
            name: 'Ноябрь', uv: this.state.statistic.November, pv: 4300, amt: 2100,
          },
          {
            name: 'Январь', uv: this.state.statistic.January, pv: 4300, amt: 2100,
          },
        ];
        return (
          <div>
          <AreaChart
            width={1000} 
            height={400}
            data={data}
            margin={{
              top: 30, right: 30, left: 30, bottom: 30,
            }}
          >
            <CartesianGrid strokeDasharray="3 3" />
            <XAxis dataKey="name" />
            <YAxis />
            <Tooltip />
            <Area type="monotone" dataKey="uv" stroke="#8884d8" fill="#8884d8" />
          </AreaChart>
          </div>
          
        );
      }
    }
    Ответ написан
    Комментировать