#javascript #vue.js #vuejs3 #inertiajs
Вопрос:
У меня, наверное, простой вопрос, но я на самом деле не знаю, как это сделать.
Я хочу использовать Sweetalert2 и использовать его глобально в каждом компоненте VueJS, который у меня есть. Так что в моем app.js У меня есть это:
import { createApp, h } from 'vue'
import { createInertiaApp } from '@inertiajs/inertia-vue3'
import { Head, Link } from '@inertiajs/inertia-vue3'
import { InertiaProgress } from '@inertiajs/progress'
import { Swal } from 'sweetalert2'
createInertiaApp({
resolve: name => require(`./Pages/${name}`),
setup({ el, App, props, plugin }) {
createApp({ render: () => h(App, props) })
.use(plugin)
.use(Swal)
.component('Link', Link)
.component('Head', Head)
.mount(el)
},
})
По какой-то причине это все еще приводит к этой ошибке:
(Изображение)
Ответ №1:
Вы пробовали использовать импорт по умолчанию
import Swal from 'sweetalert2'
Ответ №2:
.component('Swal',require('sweetalert2').default);
для того, чтобы сделать любой компонент доступным для всех компонентов vue, необходимо указать по умолчанию
, пробовали ли вы этот способ?
Комментарии:
1. По-прежнему остается, что это не определено :/
2. Работает ли это при импорте в локальном компоненте?
Ответ №3:
Попробуйте установить этот пакет npm : https://www.npmjs.com/package/vue-sweetalert2 Он сделан для vue 2 и 3