簡體   English   中英

如何使用 vue-cli 和 vue.config.js 在燈塔上糾正“預加載密鑰請求”性能問題

[英]How to correct "preload key requests" performance problem on lighthouse with vue-cli and vue.config.js

我使用 Vue-CLI 來構建我的 vue.js 項目。

當我使用 lighthouse 時,我看到了很大的性能機會:帶有以下警告的“預加載密鑰請求”:

  • 找到了“.../js/chunk-vendors.505a9ffc.js”的預加載,但瀏覽器未使用。 檢查您是否正確使用了crossorigin屬性。
  • 找到了“.../js/app.a1661204.js”的預加載,但瀏覽器未使用。 檢查您是否正確使用了crossorigin屬性。
  • 找到了“.../css/chunk-vendors.89b73702.css”的預加載,但瀏覽器未使用。 檢查您是否正確使用了crossorigin屬性。
  • 找到了“.../css/app.9ea691b0.css”的預加載,但瀏覽器未使用。 檢查您是否正確使用了crossorigin屬性。

有沒有人有解決方案可以使用 Vue-CLI 和 vue.config.js 來修改 webpack 配置?

你能解釋一下這個問題嗎?

您應該能夠在 webpack 配置文件中配置crossOriginLoading

module.exports = {
  //...
  output: {
    crossOriginLoading: 'anonymous'
  }
};

不確定你是否有單獨的 webpack 配置文件,但如果你使用默認的vue.config.js文件,你可以使用configureWebpack選項:

module.exports = {
  configureWebpack: {
    output: {
        crossOriginLoading: 'anonymous'
    },
    ...
  }
}

我使用了preload-webpack-plugin ( https://www.npmjs.com/package/preload-webpack-plugin )

const PreloadWebpackPlugin = require('preload-webpack-plugin');

// adds <style> tag with preload
module.exports = {
  ...,
  plugins: [
    ...,
    new PreloadWebpackPlugin({
        rel: 'preload',
        as: 'style',
        include: ['main', 'profile', 'search'], // can be 'allChunks' or 'initial' or see more on npm page
        fileBlacklist: [/\.map|.js/], // here may be chunks that you don't want to have preloaded
    })
  ]
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM