Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/452.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
Javascript 未为react项目中的循环定义i_Javascript_Reactjs_Pagination - Fatal编程技术网

Javascript 未为react项目中的循环定义i

Javascript 未为react项目中的循环定义i,javascript,reactjs,pagination,Javascript,Reactjs,Pagination,有人知道为什么我没有在这个循环中定义吗?我想不出来 我试图对从api接收到的数据页面进行分页,并将其全部收集到一个数组中,并将其存储在状态中,但我的for循环似乎无法正常工作,因为出现了错误:“I未定义” 我该怎么做呢 gatherAllCharacters = () => { fetch(`https://rickandmortyapi.com/api/character/`) .then(res => res.json()) .then(data

有人知道为什么我没有在这个循环中定义吗?我想不出来

我试图对从api接收到的数据页面进行分页,并将其全部收集到一个数组中,并将其存储在状态中,但我的for循环似乎无法正常工作,因为出现了错误:“I未定义”

我该怎么做呢

gatherAllCharacters = () => {
    fetch(`https://rickandmortyapi.com/api/character/`)
      .then(res => res.json())
      .then(data => {
        let characters = data.results;
        const totalPages = data.info.pages;
        if (totalPages > 1) {
          for (i = 2; i <= totalPages; i++) {
            let page = i;
            fetch(`https://rickandmortyapi.com/api/character/?page=${i}`)
              .then(res => res.json())
              .then(data => {
                characters = characters.concat(data.results);
                if (page === totalPages) {
                  this.setState({ allCharacters: characters });
                }
              });
          }
        } else {
          console.log("none");
        }
      });
  };
gathereAllCharacters=()=>{
取回(`https://rickandmortyapi.com/api/character/`)
.then(res=>res.json())
。然后(数据=>{
让字符=data.results;
const totalPages=data.info.pages;
如果(总页数>1){
for(i=2;i res.json())
。然后(数据=>{
characters=characters.concat(data.results);
如果(页面===总页面){
this.setState({allCharacters:characters});
}
});
}
}否则{
控制台日志(“无”);
}
});
};

-for(i=2;i
-for(i=2;i),因为没有定义i。在i前面需要一个var或let来定义一个新变量

for(let i = 2; i <= totalPages; i++ )

for(设i=2;i,因为未定义i。在i前面需要一个var或let来定义新变量

for(let i = 2; i <= totalPages; i++ )

for(让i=2;i可以像上面那样创建for循环

 for (i = 2; i <= totalPages; i++) {
     //perform loop
 }

for(i=2;i您可以像上面那样创建for循环

 for (i = 2; i <= totalPages; i++) {
     //perform loop
 }

for(i=2;i“否则它会将其置于全局范围”如果是这种情况OP不会得到
ReferenceError
“否则它会将其置于全局范围”如果是这种情况OP不会得到
ReferenceError
我认为严格模式不是React中的默认模式?我认为严格模式不是React中的默认模式?