javascript / expert
Snippet
Verifizierung des reaktiven Composable-Lebenszyklus in Synthetischen Mount-Kontexten
Vue-Composables, die auf Lebenszyklus-Hooks wie `onMounted` oder `onUnmounted` angewiesen sind, benötigen eine aktive Komponenteninstanz. Das Kapseln des Aufrufs in einer synthetischen Inline-Komponente ermöglicht das präzise Testen von Cleanup-Effekten.
snippet.js
javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import { mount } from '@vue/test-utils';function mountComposable(composableFn) {let result;const TestComponent = {setup() {result = composableFn();return () => null;}};const wrapper = mount(TestComponent);return { result, unmount: () => wrapper.unmount() };}export { mountComposable };
vue
Erklärung
1
setup() {
Führt das Ziel-Composable innerhalb eines aktiven Vue-Komponenten-Setup-Kontexts aus.
2
return () => null;
Gibt eine leere Render-Funktion zurück, um Overhead zu vermeiden und valide Semantik zu bewahren.
3
return { result, unmount: () => wrapper.unmount() };
Stellt die Rückgabewerte des Composables und den Unmount-Trigger für Cleanup-Hooks bereit.