недавнее интервью,На вопрос о js, вопрос контроля версий css,Забыл на мгновение,Не ответил,Сходите, чтобы проверить информацию,Разберитесь с этим.
пользователь первый При открытии веб-страницы через браузер JS、CSS документ Кэширование, чтобы в следующий раз, когда вы его откроете, вы могли получить его непосредственно из кеша, не запрашивая повторно сервер. сновапросить;когдапользовательсноваПросмотр веб-страницы через браузер,Когда браузер загружает различные ресурсы (JS, CSS, изображения), содержащиеся на веб-странице.,Сначала он определит, включен ли уже этот ресурс в кэш (конечно, это связано с Cache-Control, определенным в заголовке),Статические ресурсы редко устанавливаются в не-кеш.,Я по умолчанию тут говорю, что все они доступны кэш),если содержит,Для этого не нужно заходить на сервер.
Как решить эту проблему?
перед каждым обновлением,в html-документе,Все ссылки(URL)изJSиCSSдокумент Добавить суффикс после имени?verson=20170927
,нравиться:Global.css?v=yyyyMMddv
,Хотя находящийся ресурс по-прежнемуGlobal.css
,Но если значения v разные,Браузер будет считать их разными ресурсами. Та же причина,Для JS и картинок,也是нравиться此。
==> 但这种手动из处理方法有недостатокто есть:Когда документов много,Нужно добавлять по одному,Вероятность ошибок и отнимает много времени.
1. Отключите метод контроля версий:
оказатьсяbuild/webpack.prod.conf.js
документ,можно увидеть
==>jsдокумент:
output: {
path: config.build.assetsRoot,
filename: utils.assetsPath('js/[name].[chunkhash].js'),
chunkFilename: utils.assetsPath('js/[id].[chunkhash].js')
},
==>cssдокумент:
new ExtractTextPlugin({
filename: utils.assetsPath('css/[name].[contenthash].css')
}),
2. Отключите метод контроля версий: ==>jsдокумент:
output: {
path: config.build.assetsRoot,
filename: utils.assetsPath('js/[name].js'),
chunkFilename: utils.assetsPath('js/[id].js')
},
==>cssдокумент:
new ExtractTextPlugin({
filename: utils.assetsPath('css/[name].css')
}),