>  Q&A  >  본문

중첩된 객체를 평면화할 때 TypeScript 오류 제거

회사를 위한 편집 양식을 만들고 있는데 우리 팀의 누군가가 다른 팀 구성원과 상의하지 않고 API 페이로드 반환 형식을 변경하기로 결정하여 지금 따라잡으려고 노력하고 있습니다.

값을 데이터베이스에 다시 전달해야 하는 API 호출이 중첩된 개체로 설정되어 있지 않기 때문에 값을 더 쉽게 조작하고 제출할 수 있도록 평면화해야 합니다.

새로운 중첩 구조는 다음과 같습니다.

으아아아

다음과 같은 구조로 다시 변환해야 합니다.

으아아아

온라인에서 여러 솔루션을 찾았지만 모두 동일한 TypeScript 오류가 발생했습니다.

"for (... in ...) 문은 if 문을 사용하여 필터링해야 합니다."

또한 많은 솔루션이 다음과 같이 중첩된 요소 앞에 첫 번째 요소의 이름을 포함한다는 것을 발견했습니다.

으아아아

TS 오류를 제거하고 첫 번째 수준 요소의 이름을 중첩 요소에 추가하지 않아 간단한 단일 수준 개체를 얻을 수 있도록 이 평면화 함수를 다시 작성하는 방법을 누군가가 보여줄 수 있습니까?

이것은 내 병합 기능입니다:

{
       "status": 1, 
       "data" : {
            "name": "Tank",
            "dimensions": "2.0 x 2.5 x 4.0"
       }
    }

P粉388945432P粉388945432283일 전577

모든 응답(1)나는 대답할 것이다

  • P粉976737101

    P粉9767371012024-01-11 00:55:24

    할 수 있습니다

    으아악

    로 변경되었습니다. 으아악

    이렇게 하면 프로토타입의 내용을 전혀 건드리지 않게 됩니다.

    회신하다
    0
  • 취소회신하다