14 lines
453 B
TypeScript
14 lines
453 B
TypeScript
|
|
import { getCurrentInstance } from 'vue'
|
||
|
|
import type { ComponentInternalInstance } from 'vue'
|
||
|
|
|
||
|
|
export default function useCurrentInstance() {
|
||
|
|
if (!getCurrentInstance()) {
|
||
|
|
throw new Error('useCurrentInstance() can only be used inside setup() or functional components!')
|
||
|
|
}
|
||
|
|
const { appContext } = getCurrentInstance() as ComponentInternalInstance
|
||
|
|
const proxy = appContext.config.globalProperties
|
||
|
|
return {
|
||
|
|
proxy,
|
||
|
|
}
|
||
|
|
}
|