Skip to content

tangxiangmin/html-file-loader

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

html-file-loader

解决html-webpack-plugin中加载本地资源文件的问题

Feature

  • html模板中的文件支持依赖分析并重写路径,内置支持匹配scriptimglinkaudiovideo等多种标签
  • 支持自定义标签属性及匹配规则,方便扩展诸如懒加载相关的需求
  • 支持占位符__uri('xx')在文本中强制解析依赖文件,该api参考fis3

相关配置

module: {
    rules: [
        {
            test: /\.(htm|html)$/i,
            loader: 'html-src-loader',
           options: {
                // 按需配置需要处理的标签
               img: ["src", "data-src"], // 每个标签都可以通过数组指定多个需要替换的属性
               link: ["href"],
               audio: ["src"],
               script: ["src"],
               video: ["src"]
           }
        },
    ]
},
plugins: [
    new HtmlWebpackPlugin({
            template: path.resolve(__dirname, './demo/index.html')
        }
    )
],

默认options

const defaultTagConfig = {
    img: ["src"],
    link: ["href"],
    audio: ["src"],
    script: ["src"],
    video: ["src"]
}

为什么需要自定义匹配规则

该loader主要借鉴了html-withimg-loader的一些思想,但是html-withimg-loader缺少对于自定义匹配规则的配置,由于原作者貌似已经停止维护了,无法提交PR,因此手动实现一个版本。

在图片懒加载等场景中,我们需要将实际资源保存在如data-src等属性上,则这些属性也是需要被解析依赖的。

进一步来说,如果我们需要某个常规的标签上也需要保存解析资源依赖,则自定义匹配规则可以很方便的进行扩展。

About

a webpack html file loader that resolve file source

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy