【问题标题】:"TypeError: Invalid attempt to destructure non-iterable instance"“TypeError:解构不可迭代实例的无效尝试”
【发布时间】:2021-10-10 07:11:04
【问题描述】:

我正在使用 ionic react 来构建应用程序。我收到此错误

TypeError:解构不可迭代实例的尝试无效

运行程序后https://i.ibb.co/HgkNgyT/error.jpg .
这是我的代码

import React, { useEffect, useState } from 'react';
import {
IonContent, IonHeader, IonTitle, IonToolbar, IonApp, IonButton, IonFooter
} from '@ionic/react';
import HomeDatas from '../HomeDatas/HomeDatas';


const Home = () => {
  const [currentPage, setCurrentPage] = useState(1);
  const [postPerPage, setPostPerPage] = useState(5);

  const [cafeData, setCafeData] = useState([]);
  useEffect(() => {
  fetch('https://api.github.com/search/code?&per_page=15')
    .then(res => res.json())
    .then(data => setCafeData(data.items))
  }, [])
  console.log(typeof (cafeData));
  const newData = Object.values(cafeData);

  //Get current posts
  const [indexOfLastPost] = currentPage * postPerPage;
  const [indexOfFirstPost] = indexOfLastPost - postPerPage;
  const [currentPosts] = newData.slice(indexOfFirstPost, indexOfLastPost)

  return (
    <IonApp>
    <IonHeader translucent>
    <IonToolbar>
      <IonTitle>App</IonTitle>
    </IonToolbar>
  </IonHeader>
  <IonContent class='ion-justify-content-center'>
    {currentPosts.map(data => <HomeDatas data={data} ></HomeDatas>)}
  </IonContent>
  <IonToolbar>
    <IonFooter>
      <IonButton>Previous</IonButton>
        <IonButton>Next</IonButton>
      </IonFooter>
    </IonToolbar>
  </IonApp>
);
};

export default Home;

【问题讨论】:

    标签: javascript reactjs ionic-framework react-hooks


    【解决方案1】:

    你确定:currentPage * postPerPage;返回一个数组?请记住,您只能解构数组而不是 int 类型

    【讨论】:

    • 你是对的。这是返回 int。我犯了愚蠢的错误
    • 如果@Gift的回答解决了你的问题,请标记为解决方案。
    猜你喜欢
    • 2016-12-14
    • 1970-01-01
    • 2020-03-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-06-16
    • 2019-06-17
    相关资源
    最近更新 更多