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

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

Сообщение Anonymous »

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

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

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