Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reactjs 从API获取数据以响应图表画布JS_Reactjs_Charts_Render_React Chartjs - Fatal编程技术网

Reactjs 从API获取数据以响应图表画布JS

Reactjs 从API获取数据以响应图表画布JS,reactjs,charts,render,react-chartjs,Reactjs,Charts,Render,React Chartjs,我需要从前面的API中获取数据,并将其放入ReactChart模块中。 这是我前面的API: componentDidMount(){ const head = localStorage.getItem('head'); const payload = localStorage.getItem('payload'); const signature = localStorage.getItem('signature'); v

我需要从前面的API中获取数据,并将其放入ReactChart模块中。 这是我前面的API:

 componentDidMount(){
        const head =  localStorage.getItem('head');
        const payload =  localStorage.getItem('payload');
        const signature =  localStorage.getItem('signature');
        var tok = head + "." + payload + "." + signature;

        fetch(`${API}/api/accounts/getstataccounts` 
        ,{
            method: 'GET',
            headers: {
                'Content-Type': 'application/json',
                'authorization': `Bearer ${tok}`
            }
        })
        .then(results => {
            return results.json();
          })
          .then(res => {
            var statsaccount = res.result;
              if(res.success === true){
                for (var i =0; i< statsaccount.length; i++){
                    if(statsaccount._id == true){
                        this.setState({ account_active: statsaccount.total }) 
                    }
                    else{
                        this.setState({ account_nonactive: statsaccount.total }) 
                    }
                }
              }
          })
    }
componentDidMount(){
const head=localStorage.getItem('head');
const payload=localStorage.getItem('payload');
const signature=localStorage.getItem('signature');
var tok=水头+“+”有效载荷+“+”签名;
获取(`${API}/API/accounts/getstataccounts`
,{
方法:“GET”,
标题:{
“内容类型”:“应用程序/json”,
'授权':'持有人${tok}`
}
})
。然后(结果=>{
返回results.json();
})
。然后(res=>{
var statsaccount=结果;
如果(res.success==true){
对于(变量i=0;i
如果我在render()中的聊天中获取数据:

render(){
var{account\u active,account\u nonactive}=this.state;
常量选项={
标题:{
正文:“React中的基本柱状图”
},
数据:[{
键入:“馅饼”,
数据点:[
{标签:“活动”,y:account_active},
{标签:“非活动”,y:account_nonactive}
]
}]
}
日志(“图表”、选项、数据、数据点);
返回(
this.chart=ref}*/
/>
)
}
在渲染中使用concole.log()时,我得到:chart undefined 这是图表链接:


谢谢

我解决了问题,只是忘了在for循环中添加[i]


 for (var i =0; i< statsaccount.length; i++){
                    if(statsaccount[i]._id == true){
                        this.setState({ account_active: statsaccount[i].total }) 
                        console.log("activé : ", statsaccount[i].total)
                    }
                    else{
                        this.setState({ account_nonactive: statsaccount[i].total }) 
                        console.log("non activé : ", statsaccount[i].total)
                    }
                }
              }

对于(变量i=0;i

 for (var i =0; i< statsaccount.length; i++){
                    if(statsaccount[i]._id == true){
                        this.setState({ account_active: statsaccount[i].total }) 
                        console.log("activé : ", statsaccount[i].total)
                    }
                    else{
                        this.setState({ account_nonactive: statsaccount[i].total }) 
                        console.log("non activé : ", statsaccount[i].total)
                    }
                }
              }