앱에서 여러 구성 요소로 React 양식 상태를 전달하는 방법 (기능적)

요르단

나는 여전히 React를 처음 사용하므로 반복적 인 게시물이라면 죄송합니다. 저는 React와 함께 다른 페이지에 퍼지는 양식을 만들고 있습니다. 아이디어는 구직 지원서에서받을 수있는 유형의 양식을 갖는 것입니다. 여러 단계가있는 것.

양식의 각 단계마다 다른 구성 요소가 있습니다. 첫 번째 페이지는 홈 페이지 입니다. 만들기 페이지로 이동하는 버튼을 상상해보세요. 그런 다음 만들기 페이지가 표시 됩니다. 금액이름적힌 작은 양식이 있습니다 . 다음 페이지를 클릭하면 맞춤 설정 페이지가 표시 됩니다. 여기에서 우선 순위에 따라 예산을 수정할 수 있습니다.

여기에 이미지 설명 입력

여기에 제대로 그려지지 않은 그림에는 분명히 앱이 있고 아이들의 상태를 관리 할 수있는 예산 홈페이지가 있습니다. 나는 그렇게해야한다고 생각했다. 왜냐하면 그것이 내가 방법을 아는 유일한 방법이기 때문이다. 내가 가진 문제는 하나입니다. 구성 요소 전체에 상태를 올바르게 전달하는 방법을 모릅니다. 2 : 나는 내가하는 일이 옳은지조차 모른다. React 문서는 클래스 기반 구성 요소에서 양식을 사용하는데 도움이되지만 문제에 맞게 구성 할 수 없습니다.

어떤 도움이나 제안이라도 대단히 감사합니다. 또한 예산 페이지의 코드를 표시하고 싶습니다.

import React, { useState, useEffect, useRef } from "react";
import BudgetResultsPage from './BudgetResultsPage';

const [count, setState] = useState(0);
const handleStateCount = () => {
        if(count>3) {count = 0;}
        return setState(count + 1);
    }
if(count === 0) {
        console.log(`homepage state ${count}`)
        return (
            <div className={Styles.Calculator}>
                <BudgetHomePage setState={count} handleStateCount={handleStateCount}/>
            </div>
        )
    } else if(count===1) {
        console.log(`budget create state ${count}`)
        return (
            <div className={Styles.Calculator}>
                <CalculatorHeader />
                <CreateBudget setState={count} handleStateCount={handleStateCount} setAmount={amount} handleAmount={handleAmount}/>
            </div>
        )}

분명히 다른 페이지에 대한 가져 오기가 더 많고 구성 요소에 더 많은 코드가 전달됩니다. 이것은 구성 요소를 처리하는 방법의 일부일뿐입니다 .

아마 어리석은 일이지만 상태에서 카운트를 생성하고 있습니다. 양식의 일부가 제출되면 카운트가 올라가고 카운트가 무엇인지에 따라 페이지를 변경합니다. 하나의 상태에서만 잘 작동 하지만 더 많은 상태를 추가하는 데 문제가 있습니다.

다시 한 번 감사드립니다!

없는

몇 가지 질문을 설명하는 예제 기능 구성 요소를 작성했습니다. 나는 이것을 집에서 썼고 메모장 ++ 만 가지고 있었으므로 붙여 넣으면 컴파일되지 않을 수 있습니다. 의견은 귀하의 질문을 설명합니다

import React from 'react';
import Create_budget_page from './Create_budget_page.js';


const BudgetPage = props => {

    // State 1: assigning one value to the state.
    // State 2: assinging a list to the state.
    // State 3: assinging a object to the state.
    const [simple_state, set_simple_state] = useState(false);
    const [list_state, set_list_state] = useState(["Hello","World","!"]);
    const [object_state, set_object_state] = useState(
        {
            curmenu: "human_bios",
            height: "196cm", 
            weight: "174lbs", 
            eye_colour: "blue", 
            hair_colour: "dirty_blonde"
        }
    );
    // there are several possiblities, here's one with a list of objects
    const [list_objects, set_list_objects] = useState(
        [
            {count: 69, wasClicked: false},
            {count: 420, wasClicked: true},
            // endless possibilities, the tricky part is properly correctly updating your states deep in the list
            {integers: [1,5,2,3], keys: {isAlive: false, cur_menu: "config_menu"}}
        ]
    );

    // this function updates the state that stores an object
    // arguments:
    //      new_values_object: the programmer passes in a object to the function with the values they want to update
    //      an example of calling this function in a child functional component:
    //          props.update_object_state({height: "165cm", weight: "143lbs", hair_colour: "black"});
    function update_object_state(new_values_object){
        set_object_state(prevState => {
            const new_obj = prevState;
            // loop through object keys and update the new_obj with the object passed in as a argument
            for (var key in new_values_object){
                new_obj[key] = new_values_object[key];
            }
            // returning the new_object will update the object_state
            return new_obj;
        })
    }



    // conditionally render based on state
    
    switch(object_state["curmenu"]){
        case "home_page":
             return (
                // pass in 
                // all props, 1 prop, state
                <Create_budget_page  {...props}  parent_id={prop.parent_id} simple_state={simple_state} list_objects={list_objects}/>
             ) ;
             break;
        // pass in function
        case "human_bios":
            return (
                <div className="error_page" onClick={() => {props.update_parent_state({error_occured: true})}}>This is an Error Page, click me to report diagnostics</div>
            );
        break;
        // if none of cases are met default code executes
        default:
            // renders nothing 
            return null;
    }        
}

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

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

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

자식에서 앱 구성 요소로 상태를 전달하는 방법

분류에서Dev

react-router를 사용하여 구성 요소에 양식의 상태를 저장하는 방법

분류에서Dev

기능적 구성 요소를 사용하여 React에서 활성 클래스로 탭을 만드는 방법

분류에서Dev

In React에서 history.push를 사용하여 구성 요소에서 자식 구성 요소로 객체를 전달하고 데이터를 읽는 방법

분류에서Dev

React 기능 구성 요소에서 부실 상태를 피하는 방법

분류에서Dev

React의 두 번째 자식에서 상태를 트리거하는 버튼이있는 경우 부모 구성 요소에 상태를 전달하는 방법

분류에서Dev

React Native- 구성 요소에서 부모로 상태를 전달하는 방법

분류에서Dev

기능 구성 요소의 부모에서 자식 상태 구성 요소를 변경하는 방법

분류에서Dev

기능 구성 요소에 여러 ReactJS 상태를 작성하는 방법은 무엇입니까?

분류에서Dev

React에서 여러 구성 요소를 통해 데이터를 전달하는 방법은 무엇입니까?

분류에서Dev

React에서 자식 구성 요소의 상태를 사용하여 부모 구성 요소를 업데이트하는 방법은 무엇입니까?

분류에서Dev

전적으로 기능적 구성 요소를 기반으로하는 반응 앱에서 요소의 크기를 얻는 방법은 무엇입니까?

분류에서Dev

React-redux를 사용하여 클래스 구성 요소에서 상태를 전달하는 방법은 무엇입니까?

분류에서Dev

React에서 자식 구성 요소에서 부모 구성 요소로 매개 변수를 전달하는 방법은 무엇입니까?

분류에서Dev

React-Hooks-여러 버튼-누른 버튼의 ID를 부모 구성 요소에 전달하는 방법

분류에서Dev

React Native에서 Class 구성 요소를 기능 구성 요소로 변경하는 방법

분류에서Dev

React.js의 자식 구성 요소에서 부모 구성 요소로 데이터를 전달하는 방법

분류에서Dev

Vue에서 동적 편집기 양식 구성 요소를 만드는 방법

분류에서Dev

React-기능 구성 요소를 사용할 때 .map 함수에 대한 소품을 전달하는 방법

분류에서Dev

기능적 구성 요소에서 재질 UI 구성 요소로 참조를 올바르게 전달하는 방법

분류에서Dev

react-router-dom (<Route>)을 사용하여->에서 React의 기능적 구성 요소로 vars 전달

분류에서Dev

자식 구성 요소 동적 구성 요소 인 경우 자식에서 부모로 데이터를 전달하는 방법

분류에서Dev

한 구성 요소에 다른 파일의 다른 구성 요소로 상태를 전달하는 방법

분류에서Dev

useState 후크를 기능 구성 요소의 자식 소품에 전달하는 방법

분류에서Dev

Axios.get 및 Render 구성 요소에서 기능 구성 요소를 동적으로 반환하는 방법

분류에서Dev

React에서 자식 구성 요소에 값을 전달하는 방법

분류에서Dev

react-redux를 사용하여 기능적 구성 요소에서 액션 생성자를 호출하는 방법은 무엇입니까?

분류에서Dev

prop으로 전달 된 구성 요소에 상태를 전달하는 방법이 있습니까?

분류에서Dev

Elm / 소품을 구성 요소에 전달하는 기능적 방법

Related 관련 기사

  1. 1

    자식에서 앱 구성 요소로 상태를 전달하는 방법

  2. 2

    react-router를 사용하여 구성 요소에 양식의 상태를 저장하는 방법

  3. 3

    기능적 구성 요소를 사용하여 React에서 활성 클래스로 탭을 만드는 방법

  4. 4

    In React에서 history.push를 사용하여 구성 요소에서 자식 구성 요소로 객체를 전달하고 데이터를 읽는 방법

  5. 5

    React 기능 구성 요소에서 부실 상태를 피하는 방법

  6. 6

    React의 두 번째 자식에서 상태를 트리거하는 버튼이있는 경우 부모 구성 요소에 상태를 전달하는 방법

  7. 7

    React Native- 구성 요소에서 부모로 상태를 전달하는 방법

  8. 8

    기능 구성 요소의 부모에서 자식 상태 구성 요소를 변경하는 방법

  9. 9

    기능 구성 요소에 여러 ReactJS 상태를 작성하는 방법은 무엇입니까?

  10. 10

    React에서 여러 구성 요소를 통해 데이터를 전달하는 방법은 무엇입니까?

  11. 11

    React에서 자식 구성 요소의 상태를 사용하여 부모 구성 요소를 업데이트하는 방법은 무엇입니까?

  12. 12

    전적으로 기능적 구성 요소를 기반으로하는 반응 앱에서 요소의 크기를 얻는 방법은 무엇입니까?

  13. 13

    React-redux를 사용하여 클래스 구성 요소에서 상태를 전달하는 방법은 무엇입니까?

  14. 14

    React에서 자식 구성 요소에서 부모 구성 요소로 매개 변수를 전달하는 방법은 무엇입니까?

  15. 15

    React-Hooks-여러 버튼-누른 버튼의 ID를 부모 구성 요소에 전달하는 방법

  16. 16

    React Native에서 Class 구성 요소를 기능 구성 요소로 변경하는 방법

  17. 17

    React.js의 자식 구성 요소에서 부모 구성 요소로 데이터를 전달하는 방법

  18. 18

    Vue에서 동적 편집기 양식 구성 요소를 만드는 방법

  19. 19

    React-기능 구성 요소를 사용할 때 .map 함수에 대한 소품을 전달하는 방법

  20. 20

    기능적 구성 요소에서 재질 UI 구성 요소로 참조를 올바르게 전달하는 방법

  21. 21

    react-router-dom (<Route>)을 사용하여->에서 React의 기능적 구성 요소로 vars 전달

  22. 22

    자식 구성 요소 동적 구성 요소 인 경우 자식에서 부모로 데이터를 전달하는 방법

  23. 23

    한 구성 요소에 다른 파일의 다른 구성 요소로 상태를 전달하는 방법

  24. 24

    useState 후크를 기능 구성 요소의 자식 소품에 전달하는 방법

  25. 25

    Axios.get 및 Render 구성 요소에서 기능 구성 요소를 동적으로 반환하는 방법

  26. 26

    React에서 자식 구성 요소에 값을 전달하는 방법

  27. 27

    react-redux를 사용하여 기능적 구성 요소에서 액션 생성자를 호출하는 방법은 무엇입니까?

  28. 28

    prop으로 전달 된 구성 요소에 상태를 전달하는 방법이 있습니까?

  29. 29

    Elm / 소품을 구성 요소에 전달하는 기능적 방법

뜨겁다태그

보관