템플릿 리터럴의 값을 업데이트하지 않는 후크 상태 변경

Kisho

나는 후크에 익숙하지 않고 수업에 반응하는 것을 배우고 나서 약간 잃어 버렸습니다. 아래 코드에서 setDog를 Husky로 변경 한 다음 API 호출에 허스키 사진을 검색하고 가져옵니다. 그러나 개가 바뀌어도 일어나지 않습니다. 아무도 내가 어디로 잘못 가고 있는지 볼 수 있습니까?

import React, { useState, useEffect } from 'react';
import axios from 'axios';

export default function ApiCalls() {
    const [ data, setData ] = useState();
    const [ dog, setDog ] = useState('labrador');

    useEffect(() => {
        const fetchData = async () => {
            const result = await axios(`https://dog.ceo/api/breed/${dog}/images`);
            setData(result.data.message[0]);
        };
        fetchData();
    }, []);

    const Husky = () => {
        setDog('husky');
    };

    return (
        <div>
            <img alt={''} src={data} />
            <button onClick={Husky}>Retrieve Husky</button>
        </div>
    );
}
아민 모하마디

useEffect sensivitylist는 []이므로이 useEffect는 dog 변수가 인 컴포넌트 마운트에서 실행됩니다 labrador. 따라서 버튼을 클릭하면 개를 변경하면 서버에서 새 항목을 가져올 수 없습니다. 다음과 같이 코드를 변경하십시오.

useEffect(() => {
        const fetchData = async () => {
            const result = await axios(`https://dog.ceo/api/breed/${dog}/images`);
            setData(result.data.message[0]);
        };
        fetchData();
  }, [dog]);

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

후크를 사용하여 상태 변수의 업데이트 된 값을 가리 키지 않는 함수

분류에서Dev

템플릿 템플릿 (+ 템플릿) 매개 변수의 내부 템플릿을 지정하지 않은 상태로 두는 방법

분류에서Dev

템플릿 리터럴 내부의 텍스트 색상 변경

분류에서Dev

useEffect 후크 내에 정의 된 함수 내의 상태 변수는 값이 변경 될 때 업데이트되지 않습니다.

분류에서Dev

angularjs 지시문 테스트 (격리 된 범위 var을 변경 한 후 테스트에서 템플릿이 업데이트되지 않음)

분류에서Dev

상태 변경은 템플릿을 덮어 쓰지 않습니다.

분류에서Dev

변수 이름을 표시하는 템플릿 리터럴-React.js

분류에서Dev

문자열 리터럴을 std :: array로 변환하는 함수 템플릿

분류에서Dev

문자열 리터럴을 예상하는 템플릿에 전달할 문자열 리터럴 배열 저장

분류에서Dev

상태 변경시 navbar 템플릿을 변경하는 방법은 무엇입니까?

분류에서Dev

초기 상태를 변경하지 않고 redux 업데이트 상태 값

분류에서Dev

내 데이터가 변경 될 때 내 검색 파이프 필터가 내 템플릿을 업데이트하지 않습니다.

분류에서Dev

FormControl이 양식을 변경 한 후 상태가 깨끗하지 않거나 더럽거나 값을 업데이트하지 않습니다.

분류에서Dev

양식 작업을 변경하지 않는 Django 템플릿

분류에서Dev

요소에 변경 사항을 전달하지 않는 React 상태 후크

분류에서Dev

Meteor : 상위 템플릿을 다시 렌더링하지 않고 하위 템플릿 변경

분류에서Dev

Kivy : 템플릿에있는 TextInput의 text_hint 값을 변경하는 방법

분류에서Dev

상태 변경 후 Fragment의 UI를 업데이트하는 방법

분류에서Dev

상태 변경 후 Fragment의 UI를 업데이트하는 방법

분류에서Dev

컬렉션을 표시하는 템플릿은 데이터 삽입 후 자동으로 업데이트되지 않습니다.

분류에서Dev

템플릿을 변경하는 방법?

분류에서Dev

GetMouseButtonDown을 트리거하는 상태 변경으로 업데이트

분류에서Dev

Angularjs 지시문 : 속성 변경 후 템플릿에서 ng-class를 업데이트하는 방법

분류에서Dev

alpineJS는 데이터 업데이트시 템플릿을 어떻게 다시 변경합니까?

분류에서Dev

CloudFormation 템플릿을 업데이트 할 때 "호환되지 않는 시작 템플릿 : 네트워크 인터페이스의 디바이스 인덱스가 0이어야합니다"를 해결하려면 어떻게해야합니까?

분류에서Dev

클래스 템플릿에서 상속되는 템플릿 매개 변수의 기본 템플릿 유형을 확인하는 방법은 무엇입니까?

분류에서Dev

Typescript : 템플릿 리터럴 유형 값에 변수를 사용하는 방법이 있습니까?

분류에서Dev

역류 상태 업데이트가 textarea의 defaultValue 변경을 표시하지 않습니까?

분류에서Dev

업데이트 됨 : onClick이 함수 작업을 실행하더라도 buttonText의 상태가 변경되지 않는 이유는 무엇입니까?

Related 관련 기사

  1. 1

    후크를 사용하여 상태 변수의 업데이트 된 값을 가리 키지 않는 함수

  2. 2

    템플릿 템플릿 (+ 템플릿) 매개 변수의 내부 템플릿을 지정하지 않은 상태로 두는 방법

  3. 3

    템플릿 리터럴 내부의 텍스트 색상 변경

  4. 4

    useEffect 후크 내에 정의 된 함수 내의 상태 변수는 값이 변경 될 때 업데이트되지 않습니다.

  5. 5

    angularjs 지시문 테스트 (격리 된 범위 var을 변경 한 후 테스트에서 템플릿이 업데이트되지 않음)

  6. 6

    상태 변경은 템플릿을 덮어 쓰지 않습니다.

  7. 7

    변수 이름을 표시하는 템플릿 리터럴-React.js

  8. 8

    문자열 리터럴을 std :: array로 변환하는 함수 템플릿

  9. 9

    문자열 리터럴을 예상하는 템플릿에 전달할 문자열 리터럴 배열 저장

  10. 10

    상태 변경시 navbar 템플릿을 변경하는 방법은 무엇입니까?

  11. 11

    초기 상태를 변경하지 않고 redux 업데이트 상태 값

  12. 12

    내 데이터가 변경 될 때 내 검색 파이프 필터가 내 템플릿을 업데이트하지 않습니다.

  13. 13

    FormControl이 양식을 변경 한 후 상태가 깨끗하지 않거나 더럽거나 값을 업데이트하지 않습니다.

  14. 14

    양식 작업을 변경하지 않는 Django 템플릿

  15. 15

    요소에 변경 사항을 전달하지 않는 React 상태 후크

  16. 16

    Meteor : 상위 템플릿을 다시 렌더링하지 않고 하위 템플릿 변경

  17. 17

    Kivy : 템플릿에있는 TextInput의 text_hint 값을 변경하는 방법

  18. 18

    상태 변경 후 Fragment의 UI를 업데이트하는 방법

  19. 19

    상태 변경 후 Fragment의 UI를 업데이트하는 방법

  20. 20

    컬렉션을 표시하는 템플릿은 데이터 삽입 후 자동으로 업데이트되지 않습니다.

  21. 21

    템플릿을 변경하는 방법?

  22. 22

    GetMouseButtonDown을 트리거하는 상태 변경으로 업데이트

  23. 23

    Angularjs 지시문 : 속성 변경 후 템플릿에서 ng-class를 업데이트하는 방법

  24. 24

    alpineJS는 데이터 업데이트시 템플릿을 어떻게 다시 변경합니까?

  25. 25

    CloudFormation 템플릿을 업데이트 할 때 "호환되지 않는 시작 템플릿 : 네트워크 인터페이스의 디바이스 인덱스가 0이어야합니다"를 해결하려면 어떻게해야합니까?

  26. 26

    클래스 템플릿에서 상속되는 템플릿 매개 변수의 기본 템플릿 유형을 확인하는 방법은 무엇입니까?

  27. 27

    Typescript : 템플릿 리터럴 유형 값에 변수를 사용하는 방법이 있습니까?

  28. 28

    역류 상태 업데이트가 textarea의 defaultValue 변경을 표시하지 않습니까?

  29. 29

    업데이트 됨 : onClick이 함수 작업을 실행하더라도 buttonText의 상태가 변경되지 않는 이유는 무엇입니까?

뜨겁다태그

보관