Vite处理html模板插件之vite-plugin-html插件使用

 更新时间:2023年10月20日 08:29:38   作者:DBAA_ws  
这篇文章主要给大家介绍了关于Vite处理html模板插件之vite-plugin-html插件使用的相关资料,Vite是一个现代化的前端构建工具,而vite-plugin-html是Vite的一个插件,用于在构建时自动生成HTML文件,需要的朋友可以参考下

前言

背景:项目中需要使用模板html动态处理比如 icon 、title。我的项目里是需要在不同的打包指令下,打包的结果中index.html 中title 和 icon都不一致。之前的项目使用的是 html-webpack-plugin 插件。安装该插件的使用需要注意你项目的webpack版本,安装对应的版本插件。本次因为项目是vite项目,所以采用vite-plugin-html插件。本文作为使用记录。结尾还有个疑问一直没有解决,欢迎大神留言解答一下。

一、项目目录

项目目录如下,主要关注红框的 html文件

二、index.html

三、vite.config.js

主要目的 是以template 值对应的 html 为模板,为其注入一些动态值。这里主要是 title、icon。

import { createHtmlPlugin } from 'vite-plugin-html'
export default defineConfig({
  plugins: [
    createHtmlPlugin({
        minify: true,
        pages: [
          {
            filename: 'index.html',
            template: 'index.html',
            injectOptions: {
              data: {
                title: product,
                injectIcoLink: `<link rel="icon" href="${getFaviconPath()}" />`,
                pubId: pubIdObj[product],
              },
            },
          },
          {
            filename: '/legale/cookie/index.html',
            template: '/legal/cookie/index.html',
            injectOptions: {
              data: {
                title: product,
                injectIcoLink: `<link rel="icon" href="${getFaviconPath()}" />`,
                productName: product,
              },
            },
          },
          {
            filename: '/legale/privacy/index.html',
            template: '/legal/privacy/index.html',
            injectOptions: {
              data: {
                title: product,
                injectIcoLink: `<link rel="icon" href="${getFaviconPath()}" />`,
                productName: product,
              },
            },
          },
          {
            filename: '/legale/service/index.html',
            template: '/legal/service/index.html',
            injectOptions: {
              data: {
                title: product,
                injectIcoLink: `<link rel="icon" href="${getFaviconPath()}" />`,
                productName: product,
              },
            },
          },
        ],
      })
  ]
})

四、打包dist的结果

打包结果如预期,legal 整个文件夹都打到了dist 目录下,并且html 需要注入的值也都对应的注入进去了。

五、有个疑问

本地环境打不开 legal里的html,结果如下。但是 postman 可以获取到 html 内容。 线上生产环境也是没有问题的,可以打开页面。 欢迎大佬给出建议。

总结

到此这篇关于Vite处理html模板插件之vite-plugin-html插件使用的文章就介绍到这了,更多相关Vite vite-plugin-html插件内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Nuxt3+ElementPlus构建打包部署全过程

    Nuxt3+ElementPlus构建打包部署全过程

    网上大部分关于Nuxt打包部署教程可谓是可以用五花八门来形容,这对于第一次接触的朋友简直是无从下手,这篇文章主要给大家介绍了关于Nuxt3+ElementPlus构建打包部署的相关资料,需要的朋友可以参考下
    2023-01-01
  • vue组件常用的父子、兄弟、跨组件等传值方法

    vue组件常用的父子、兄弟、跨组件等传值方法

    Vue常用的三种传值方式有: •父传子 •子传父 •非父子传值 引用官网的一句话:父子组件的关系可以总结为 prop 向下传递,事件向上传递,熟悉vue各类关系的组件之间传值方法会令开发更加得心应手,下面将对父子、兄弟、页级组件之间的传值作浅谈
    2023-12-12
  • vue3使用iframe嵌入ureport2设计器,解决预览时NullPointerException异常问题

    vue3使用iframe嵌入ureport2设计器,解决预览时NullPointerException异常问题

    这篇文章主要介绍了vue3使用iframe嵌入ureport2设计器,解决预览时NullPointerException异常问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-10-10
  • 详解vue中axios请求的封装

    详解vue中axios请求的封装

    这篇文章主要介绍了vue中axios请求的封装,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-04-04
  • vue中如何使用echarts和echarts-gl实现3D饼图环形饼图

    vue中如何使用echarts和echarts-gl实现3D饼图环形饼图

    现在vue是很多公司前端的主流框架,我目前所在公司接触的项目也都是使用vue来实现的,很少有完全使用原生的JavaScript来写项目的了,下面这篇文章主要给大家介绍了关于vue中如何使用echarts和echarts-gl实现3D饼图环形饼图的相关资料,需要的朋友可以参考下
    2023-03-03
  • webpack配置导致字体图标无法显示的解决方法

    webpack配置导致字体图标无法显示的解决方法

    下面小编就为大家分享一篇webpack配置导致字体图标无法显示的解决方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-03-03
  • vue实现随机验证码功能的实例代码

    vue实现随机验证码功能的实例代码

    这篇文章主要介绍了vue实现随机验证码功能的实例代码,代码简单易懂,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-04-04
  • Element Rate 评分的使用方法

    Element Rate 评分的使用方法

    这篇文章主要介绍了Element Rate 评分的使用方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07
  • Element-ui Image图片按需引入大图预览

    Element-ui Image图片按需引入大图预览

    这篇文章主要为大家介绍了Element-ui Image图片按需引入大图预览实现详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-07-07
  • vue开发心得和技巧分享

    vue开发心得和技巧分享

    这篇文章主要为大家分享了vue开发心得和技巧,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-10-10

最新评论