programing

Vue에서 상위 템플릿 구성 요소를 가져오는 방법

yoursource 2022. 11. 1. 22:35
반응형

Vue에서 상위 템플릿 구성 요소를 가져오는 방법

나도 알아, 나는 vue에서this.$parentvdom 트리의 상위 컴포넌트를 가져옵니다.하지만 저는 현재 컴포넌트를 렌더링한 컴포넌트를 취득하는 것과 다른 것을 기대하고 있습니다.

예를 들어 컴포넌트(이름 지정)가 있습니다.comp-container) 템플릿 포함:

<template>
  <comp-a>
    <comp-b></comp-b>
  </comp-a>
</template>

그리고...comp-b$parent의 예가 될 것이다comp-a것은 아니다.comp-container기대했던 대로요

내 현재 앱로치는 위쪽으로 이동 중이고$parent찾을 때까지의 속성comp-b존재하다$options.components이 방법은 현재 작동하지만 상당히 보기 흉하고 고장나면comp-b글로벌하게 등록된 컴포넌트입니다.공식적인 방법이 있나요?

소품을 통해 상위 템플릿 구성요소 전달:<comp-b :container="this"></comp-b>그 일은 할 수 있지만, 너무 장황해서 마음에 들지 않아요.

정확한 사용 사례에 대해서는 잘 모르겠습니다만, 기본적으로 슬롯이 있는 경우($parent는 정상적으로 동작하기 때문에 거의 추측) 렌더링 컴포넌트는 다음 사이트에서 찾을 수 있습니다.$180.default[0].default;

기본적으로 슬롯의 컨텍스트 속성은 렌더링 컨텍스트(구성요소 렌더링 - 구성 요소가 렌더링된 구성 요소)입니다.

Vue 2에서만 테스트 완료

언급URL : https://stackoverflow.com/questions/44383831/how-to-get-the-parent-template-component-in-vue

반응형