로컬스트레인지 데이터 값 확인 후 같으면 배열 부분 수정

로컬스트레인지 데이터 값 확인 후 같으면 배열 부분 수정

QA

로컬스트레인지 데이터 값 확인 후 같으면 배열 부분 수정

본문

하다가 막혔는데 검색해도 나오지 않아 조언을 얻고자 합니다.

 


//요런 데이터가 있습니다.
const recipestate = [
        {
            "id": 0,
            "date": "2022.09.21" ,
            "list": [
                {
                    "num":,
                    "revenue" : ""
                    "listTit": "",
                    "won": 
                }
            ]
        },
{
            "id": 1,
            "date": "2022.09.22" ,
            "list": [
                {
                    "num":,
                    "revenue" : ""
                    "listTit": "",
                    "won": 
                }
            ]
        }
 
    ]
 
 
<form onSubmit={handleSubmit}>
                        <ul>
                            <li>
                                <label>
                                    <input type="radio" value="수입" name='revenue'  onChange={onChangeInput} />수입
                                </label>
                            </li>
 
                            <li>
                                <label>
                                    <input type="radio" value="지출" name='revenue'  onChange={onChangeInput} />지출
                                </label>
                            </li>
                        </ul>
 
                        <label className='botLine'>
                            <input type="text" placeholder="사용 내역을 적어주세요.(필수 아님)" value={listTit} name="listTit" onChange={onChangeInput} />
                        </label>
                   
                   
                   
                        <label className='botLine'>
                            <input type="number" placeholder="금액을 적어주세요.(필수)" value={won} name="won" onChange={onChangeInput} required />
                            <p>원</p>
                        </label>
 
<button type='submit'>등록</button>
</form>

 

리액트 구문을 사용하였으나 자바스크립트랑 비슷할것 같아서 여쭙니다ㅠㅠ

등록 버튼을 눌렀을 때

recipestate.id 값이랑 현재페이지 값이 같으면 아래처럼 list 에 데이터를 추가하고 싶습니다.

 


const recipestate = [
{
            "id": 0,
            "date": "2022.09.21" ,
            "list": [
                {
                    "num": 1,
                    "revenue" : "수입"
                    "listTit": "공차",
                    "won": 5000
                }
            ]
        },
{
]
 
 
//요 아래 부분은 제가 이것저것 해보다 나온건데 안되더라구여..
const handleSubmit = (e) => {
        e.preventDefault();
        const Datalist = {
            list: [
                {
                    num: current++,
                    revenue,
                    listTit,
                    won
                }
            ]
        }
 
        setData(
            Data.map((data) => {
                return data.id === dnum ? [...Data, Datalist] : Data
            })
        )
    };

 

 

이 질문에 댓글 쓰기 :

답변 1

로컬스트레인지?

로컬스토리지 인것 같고 localStorage 관련 코드는 없는것 같네요

 

리액트 같은데 리액트에서 로컬스토리지 사용예시 링크 하나 남겨드립니다.

https://velog.io/@boyfromthewell/localStorage

답변을 작성하시기 전에 로그인 해주세요.
전체 123,643 | RSS
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT