Нет предварительно загруженных файлов с preload-webpack-plugin - PullRequest
2 голосов
/ 19 февраля 2020

У меня есть вопрос, связанный с предварительной загрузкой и предварительной загрузкой.

  1. У меня есть приложение vue, и после сборки я получаю дважды загруженные файлы в моем dist / index. html. Вы можете увидеть это ниже.
  2. Кроме того, «сценарии» не загружаются заранее. Я не знаю, почему. У меня установлен плагин.

    <head>
    <title></title>
    <link href=/app.128b43f14088f83cb6c0.js rel=preload as=script>
    <link href=/chunk-vendors.128b43f14088f83cb6c0.js rel=preload as=script>
    
    <div id=app></div>
    <script src=/chunk-vendors.128b43f14088f83cb6c0.js></script>
    <script src=/app.128b43f14088f83cb6c0.js></script>
    

vue .config. js

modules.export = {
    configureWebpack: () => {
        return {
            devtool: 'source-map',
            output: {
                filename: '[name].[hash].js',
                chunkFilename: '[name].[hash].js'
            },
            plugins: [
                new PreloadWebpackPlugin(),
                new CleanWebpackPlugin()
            ],
            resolve: {
                alias: {
                   styles: path.join(__dirname, 'src/assets')
                }
            }
        }
    }
}

1 Ответ

1 голос
/ 19 февраля 2020

У меня есть приложение vue, и после сборки я получаю дважды загруженные файлы в моем dist / index. html.

Vue CLI уже внедряет свою собственную плагин предварительной загрузки , поэтому ваш плагин дублирует предварительную загрузку / предварительную выборку. Просто удалите свой, чтобы устранить дублирование.

Вы должны придерживаться того, который уже предоставлен Vue CLI, так как он модифицирован для работы с Vue CLI toolchain. Если вы по какой-то причине предпочитаете использовать свой собственный, вы можете удалить встроенный плагин с помощью:

// vue.config.js
module.exports = {
  chainWebpack: config => {
    config.plugins.delete('preload')
    config.plugins.delete('prefetch')
  }
}
...