Почему VITE собирает отдельный файл jQuery, даже когда он забивает его в файле Vite.config.js в проекте Laravel 11?Jquery

Программирование на jquery
Ответить Пред. темаСлед. тема
Anonymous
 Почему VITE собирает отдельный файл jQuery, даже когда он забивает его в файле Vite.config.js в проекте Laravel 11?

Сообщение Anonymous »

Я разрабатываю панель администратора для личного проекта с помощью Laravel 11 и использую Vite (по умолчанию в Laravel) для объединения ресурсов. Я установил jQuery в свой проект, и хотя я настроил Vite для его фрагментирования в файл поставщика, я заметил, что Vite по-прежнему генерирует отдельный файл jQuery.
Вот конфигурация фрагментирования в моем файле vite.config.js:

Код: Выделить всё

manualChunks: {
"core": ["axios"],
"vendor": ["alpinejs", "bootstrap", "jquery"],
"charts": ["d3"],
},
Но после компиляции файл jquery-[hash].js все равно генерируется. Содержимое файла выглядит следующим образом:

Код: Выделить всё

import {r as u, g as f} from "./vendor-Dg7k8igf.js";
function c(t, n) {
for (var o = 0; o < n.length; o++) {
const e = n[o];
if (typeof e != "string" && !Array.isArray(e)) {
for (const r in e)
if (r !== "default" && !(r in t)) {
const a = Object.getOwnPropertyDescriptor(e, r);
a && Object.defineProperty(t, r, a.get ? a : {
enumerable: !0,
get: () => e[r]
})
}
}
}
return Object.freeze(Object.defineProperty(t, Symbol.toStringTag, {
value: "Module"
}))
}
var s = u();
const i = f(s)
, y = c({
__proto__: null,
default: i
}, [s]);
export {i as a, y as j};
Вот мой полный файл vite.config.js:

Код: Выделить всё

import {defineConfig} from 'vite';
import laravel from 'laravel-vite-plugin';
import manifestSRI from 'vite-plugin-manifest-sri';
import pkg from './package.json';

export default defineConfig({
plugins: [
laravel({
input: [
'resources/assets/admin/sass/app.scss',
'resources/assets/admin/js/app.js',
'resources/assets/frontend/css/app.css',
'resources/assets/frontend/js/app.js',
],
detectTls: 'admin-panel.test',
refresh: true,
}),
manifestSRI(),
],

optimizeDeps: {
include: Object.keys(pkg.dependencies),
},

build: {
emptyOutDir: true,
sourcemap: "hidden",
minify: true,
chunkSizeWarningLimit: 1000, // 1MB
rollupOptions: {
output: {
minifyInternalExports: true,
manualChunks: {
"core": ["axios"],
"vendor": ["alpinejs", "bootstrap", "jquery"],
"charts": ["d3"],
},
entryFileNames: 'assets/[name]-[hash].js',
chunkFileNames: 'assets/[name]-[hash].js',
assetFileNames: 'assets/[name]-[hash].[ext]',
format: 'esm'
}
}
}
});
Проблема:
Несмотря на то, что я разбил jquery на чанк поставщика, отдельный файл для jQuery (

Код: Выделить всё

jquery-[hash].js
) все еще генерируется. Это не относится к пакетам других поставщиков, таким как alpinejs или bootstrap, которые упаковываются правильно.
Может ли кто-нибудь объяснить, почему это происходит и как мне можно ли гарантировать, что jQuery будет включен в состав остальных зависимостей поставщика, а не будет выделен в отдельный файл?

Подробнее здесь: https://stackoverflow.com/questions/793 ... the-vite-c
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Jquery»