项目作者: Jarweb

项目描述 :
a webpack@4x plugin for resource hints
高级语言: JavaScript
项目地址: git://github.com/Jarweb/resourcehints-webpack-plugin.git
创建时间: 2020-03-24T07:22:28Z
项目社区:https://github.com/Jarweb/resourcehints-webpack-plugin

开源协议:

下载


install

support webpack 4x

  1. npm i @jarzzzi/resourcehints-webpack-plugin --save-dev

plugin options

  • excludeHtml
    • {Array}|undefined
    • 排除的 html 页面
  • exclude
    • {Array}|undefined
    • 排除的 chunk
  • includ
    • string|{Array}|undefined
    • all
    • initial
    • async
    • 指定的 chunk
  • rel
    • string
    • dns-prefetch
    • preconnect
    • preload
    • prefetch
  • as
    • string
    • image, font, style, script, fetch, audio, video, worker, document, object, embed, track
    • 相应的 as

about resource hints

  • dns-prefetch: 提前解析 dns
  • preconnect: 提前链接
  • preload: 提前加载当前页面资源
  • prefetch: 当前页面空闲时,提前加载下一页面资源
  • prerender: chrome 已废弃
  • subresource: chrome 已废弃

demo

  1. new ResourceHitWebpackPlugin({
  2. rel: 'dns-prefetch',
  3. include: [
  4. '//www.baidu.com',
  5. ],
  6. }),
  7. new ResourceHitWebpackPlugin({
  8. rel: 'preconnect',
  9. include: [
  10. '//www.baidu.com',
  11. ],
  12. }),
  13. new ResourceHitWebpackPlugin({
  14. rel: 'prefetch',
  15. exclude: ['chunk-one'],
  16. }),
  17. new ResourceHitWebpackPlugin({
  18. rel: 'preload',
  19. include: 'async',
  20. exclude: ['chunk-one'],
  21. }),
  22. new ResourceHitWebpackPlugin({
  23. rel: 'preload',
  24. include: 'initial',
  25. exclude: ['chunk-one'],
  26. excludeHtml: ['demo-page'],
  27. }),
  28. new ResourceHitWebpackPlugin({
  29. rel: 'preload',
  30. include: 'all',
  31. exclude: ['chunk-one'],
  32. excludeHtml: ['demo-page'],
  33. }),
  34. new ResourceHitWebpackPlugin({
  35. rel: 'preload',
  36. as: 'script',
  37. include: ['vendor', 'polyfill', 'common-lib'],
  38. }),
  39. new ResourceHitWebpackPlugin({
  40. rel: 'preload',
  41. as: 'font',
  42. include: ['yahei'],
  43. }),