+
+
+
+
+
+ Hi
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/composables/index.ts b/src/composables/index.ts
index 6897c6f..ef59a31 100644
--- a/src/composables/index.ts
+++ b/src/composables/index.ts
@@ -1,2 +1,3 @@
export { useTippy } from './useTippy'
+export { useTippyComponent } from './useTippyComponent'
export { useSingleton } from './useSingleton'
diff --git a/src/composables/useTippyComponent.ts b/src/composables/useTippyComponent.ts
new file mode 100644
index 0000000..fa62c9f
--- /dev/null
+++ b/src/composables/useTippyComponent.ts
@@ -0,0 +1,25 @@
+import { h, ref } from 'vue'
+import { TippyOptions } from '../types'
+import TippyComponent from './../components/Tippy'
+
+export function useTippyComponent(
+ opts: TippyOptions = {},
+ children?: any
+) {
+ const instance = ref()
+
+ return {
+ instance,
+ TippyComponent: h(
+ TippyComponent,
+ {
+ ...opts,
+ onVnodeMounted: vnode => {
+ //@ts-ignore
+ instance.value = vnode.component.ctx
+ },
+ },
+ children
+ ),
+ }
+}
diff --git a/src/index.ts b/src/index.ts
index 4b4cdf5..0f97178 100644
--- a/src/index.ts
+++ b/src/index.ts
@@ -12,6 +12,7 @@ import directive from './directive'
import plugin from './plugin'
import { useTippy } from './composables/useTippy'
+import { useTippyComponent } from './composables/useTippyComponent'
import { useSingleton } from './composables/useSingleton'
const setDefaultProps = tippy.setDefaultProps
@@ -23,6 +24,7 @@ setDefaultProps({
export {
useTippy,
+ useTippyComponent,
roundArrow,
tippy,
useSingleton,