digimarket-nuxt-module
Version:
Nuxt ui kit module for nuxt 3. a modern and beautiful marketplace ui
31 lines (27 loc) • 929 B
text/typescript
import {defineNuxtPlugin} from "nuxt/app";
export default defineNuxtPlugin((nuxtApp) => {
const vClickoutside = {
beforeMount: function (el, binding, vnode) {
binding.event = function (event) {
if (!(el === event.target || el.contains(event.target))) {
if (binding.value instanceof Function) {
binding.value(event)
}
}
}
document.body.addEventListener('click', binding.event)
},
unmounted: function (el, binding, vnode) {
document.body.removeEventListener('click', binding.event)
}
}
nuxtApp?.vueApp?.directive('clickoutside', vClickoutside)
const router = useRouter();
router?.addRoute({
name: 'NtmLogin',
path: '/market/user/login',
})
return {
provide: {}
}
})