【问题标题】:can't find variable :useState找不到变量:useState
【发布时间】:2020-07-06 08:32:17
【问题描述】:

所以我在获取数据并尝试将其分配给我的 const 后收到此错误。我第一次使用钩子,我不知道我做错了什么。这是我的代码:

export default function MedProfilScreen({route}){
    //const {id,name,specialite,work}=route.params;
    const [data,setData]=useState([])
    useEffect(()=>{
      fetch('http:......)
    
    .then((response) => response.json())
    .then((res) => {
      setData(data.res);
    console.log(res)
   })
    .done();
    });

这就是 console.log 显示的内容:

Array [
  Object {
    "code": "12459552",
    "id": 7,
    "name": "Dr xavier vilan",
    "speciality": "Cardio",
  },
  Object {
    "education": Array [
      Object {
        "date_debut": "2020-02-07",
        "date_end": "2020-02-06",
        "diplome": "asmaa",
        "school": "asmaa",
        "city": "vullez",
      },
      ]}
]

【问题讨论】:

  • 你导入 useState 了吗?
  • 导入useState 喜欢import { useState } from 'react';
  • 谢谢你我没有导入 {useState} 它为我修复了它

标签: javascript reactjs react-native ecmascript-6


【解决方案1】:

添加

import {useState} from "react";

【讨论】:

    【解决方案2】:

    您可以从React 导入useState,或使用React.useState(如果您将'react' 导入为React)。 另外,您必须将setData 提供给useEffect,否则会出现警告。

    useEffect(() => {your function}, [setData])
    

    【讨论】:

    • 还有一件事,我的代码中的“this.setState({data:res })”是什么?
    • 嗨@Aymen,等效的将是 .. setData(res) ,假设您要存储在数据状态中的值是 res。
    猜你喜欢
    • 2021-10-10
    • 2021-07-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-11-22
    • 2016-04-30
    • 2021-03-25
    相关资源
    最近更新 更多