Итак, у меня в приложении установлен Vue.js (с использованием vue-cli и webpack). Все отлично работает. Кроме того, я реализовал разделение кода, чтобы мне не приходилось загружать неиспользуемые компоненты до тех пор, пока они не потребуются. Все это тоже отлично работает. Однако, если я собираюсь выпустить новую версию своего приложения, сгенерированный код, разбивающий файлы .js, будет кэшироваться в клиентском браузере, и они не получат обновления, пока не очистят свой кеш в своем браузере. .
Чтобы этого не произошло раньше с main.js, я реализовал разделение кода, добавив номер версии в значение строки запроса в файле main.js, который собирает webpack следующим образом:
<script src="~/scripts/build/[email protected]" asp-append-version="true"></script>
После добавления разделения кода я теперь получаю файл main.js плюс четыре дополнительных файла .js, но я не уверен, как управлять версиями автоматически созданных файлов .js, на которые ссылается файл main.js.
основной.js 0.js 1.js 2.js 3.js
Я могу легко назвать их, используя волшебные комментарии, поддерживаемые в веб-пакете, например:
const page0 = ()=> import(/* webpackChunkName: "my-page-0" */ './components/MyPage0.vue');
const page1 = ()=> import(/* webpackChunkName: "my-page-1" */ './components/MyPage1.vue');
const page2 = ()=> import(/* webpackChunkName: "my-page-2" */ './components/MyPage2.vue');
const page3 = ()=> import(/* webpackChunkName: "my-page-3" */ './components/MyPage3.vue');
Но я не знаю, как сделать имена динамическими, чтобы я мог добавить версию или хэш или что-то, что заставит браузер извлекать некэшированную версию после обновления программного обеспечения.