P粉0042876652023-08-25 18:25:26
더 쉬운 방법은 v-if 또는 v-for를 사용하는 것입니다.
컴포넌트를 직접 처리하는 대신 컴포넌트의 상태를 처리하고 Vue의 반응성이 마술처럼 작동하도록 합시다
이것은 동적으로 구성요소(Toast)를 추가하고 구성요소의 상태를 조작하는 예시입니다
Toast.vue 파일: 여기서 v-for는 반응적입니다. 오류 개체에 새 오류가 추가될 때마다 렌더링됩니다
으아악ErrorTrigger.vue: 클릭 이벤트가 발생할 때마다 오류 객체에 오류를 푸시합니다
으아악전체 예: https://stackblitz.com/edit/vitejs-vite-mcjgkl
P粉5981402942023-08-25 00:33:13
createVNode(component, props)
和render(vnode, container)
Create: createVNode()
创建一个带有props的组件定义的VNode
(例如,从*.vue
导入的SFC),可以将其传递给render()
를 사용하여 지정된 컨테이너 요소를 렌더링합니다.
Destroy: render(null, container)
会销毁附加到容器的VNode
。当父组件卸载时(通过unmounted
lifecycle 후크 호출) 정리를 위해 이 메서드를 호출해야 합니다.
참고: 이 방법은 향후 버전에서 리팩토링되거나 제거될 수 있는 내부 방법(createVNode
和render
)을 사용합니다.
createApp(component, props)
和app.mount(container)
만들기: createApp()
createApp()
创建一个应用实例。该实例具有mount()
을 사용하여 적용 사례 . 이 인스턴스에는 mount()
파괴: 애플리케이션 인스턴스에는 애플리케이션 및 구성 요소 인스턴스를 파기하는 unmount()
方法来销毁应用和组件实例。当父组件卸载时(通过unmounted
unmount()
unmounted
수명 주기 후크를 통해) 정리하기 위해 이 메소드를 호출해야 합니다. 으아악 참고:
이 방법은 문서에서 여러 구성 요소를 동시에 인스턴스화해야 하는 경우 각 구성 요소에 대한 애플리케이션 인스턴스를 생성하므로 상당한 오버헤드가 발생할 수 있습니다.