NaiveProvider.vue 692 B

1234567891011121314151617181920212223242526272829303132
  1. <script setup lang="ts">
  2. function registerNaiveTools () {
  3. window.$ModalMessage = useMessage()
  4. window.$ModalNotification = useNotification()
  5. window.$ModalDialog = useDialog()
  6. window.$ModalLoadingBar = useLoadingBar()
  7. }
  8. const NaiveProviderWrapper = defineComponent({
  9. name: 'NaiveProviderWrapper',
  10. setup() {
  11. registerNaiveTools()
  12. },
  13. render() {
  14. return h('div')
  15. }
  16. })
  17. </script>
  18. <template>
  19. <NLoadingBarProvider>
  20. <NDialogProvider>
  21. <NNotificationProvider>
  22. <NMessageProvider>
  23. <slot></slot>
  24. <NaiveProviderWrapper />
  25. </NMessageProvider>
  26. </NNotificationProvider>
  27. </NDialogProvider>
  28. </NLoadingBarProvider>
  29. </template>