Есть ли способ сжать файл app.js в vuejs - PullRequest
1 голос
/ 11 октября 2019

Я использую vuejs с файлом лезвия Laravel (также Laravel Mix). Но когда я запускаю 'npm run watch' на локальном компьютере, он создает около 13 МБ app.js! Когда я запускаю 'npm run pord' на сервере, это составляет 6 МБ! Таким образом, пользователи сталкиваются с медлительностью каждый раз, когда я запускаю новую задачу. У меня мало разрешений на роль (основная панель и школьная панель). Главная панель имеет полный контроль над всеми вещами. Но школьная панель имеет мало компонентов. Мы используем блейд-файл, который вызывает главный компонент, а главный компонент может иметь один или несколько компонентов, которые являются SPA ( Tab tab) . Означает, что когда пользователь нажимает на другую вкладку, он загружает другой компонент, но если пользователь нажимает на боковое меню, страница (файл лезвия laravel) перезагружается и загружает другую страницу с вкладками.

Мне не нужно загружать все компоненты для школыПанель как эта панель имеет ограниченное разрешение. Есть ли способ, чтобы я мог загрузить специфичный для компонента файл js вместо одного файла js (app.js)? Есть ли способ сжать все пакеты в один файл и файл компонента в другой файл js? (Как всякий раз, когда я внедряю изменения, пользователь должен снова загрузить весь файл js) enter image description here

1 Ответ

0 голосов
/ 14 октября 2019

Вы начинаете с изменения вашей сборки, поэтому она создает два пакета:

app.d1f04bb8.js (your code)
vendor.b9f38bcd.js (libraries)

оба кэшируются, поэтому, когда вы делаете небольшие изменения - пользователю нужно будет загружать только новые app.js.

Вы можете пойти дальше и сделать больше пакетов поставщиков, больше пакетов приложений, пакетов с отложенной загрузкой и т. Д. - какой из них вам нужен, очень специфичен.

PS Конечно, убедитесь, что ваш кодминимизированы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...