| 12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- <script setup lang="ts">
- import { defineComponent, h } from 'vue'
- import {
- NDialogProvider,
- NLoadingBarProvider,
- NMessageProvider,
- NNotificationProvider,
- useDialog,
- useLoadingBar,
- useMessage,
- useNotification
- } from 'naive-ui'
- function registerNaiveTools() {
- window.$loadingBar = useLoadingBar()
- window.$dialog = useDialog()
- window.$message = useMessage()
- window.$notification = useNotification()
- }
- const NaiveProviderContent = defineComponent({
- name: 'NaiveProviderContent',
- setup() {
- registerNaiveTools()
- },
- render() {
- return h('div')
- }
- })
- </script>
- <template>
- <NLoadingBarProvider>
- <NDialogProvider>
- <NNotificationProvider>
- <NMessageProvider>
- <slot />
- <NaiveProviderContent />
- </NMessageProvider>
- </NNotificationProvider>
- </NDialogProvider>
- </NLoadingBarProvider>
- </template>
|