欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

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

 更新時間:2023年10月20日 08:29:38   作者:DBAA_ws  
這篇文章主要給大家介紹了關(guān)于Vite處理html模板插件之vite-plugin-html插件使用的相關(guān)資料,Vite是一個現(xiàn)代化的前端構(gòu)建工具,而vite-plugin-html是Vite的一個插件,用于在構(gòu)建時自動生成HTML文件,需要的朋友可以參考下

前言

背景:項目中需要使用模板html動態(tài)處理比如 icon 、title。我的項目里是需要在不同的打包指令下,打包的結(jié)果中index.html 中title 和 icon都不一致。之前的項目使用的是 html-webpack-plugin 插件。安裝該插件的使用需要注意你項目的webpack版本,安裝對應(yīng)的版本插件。本次因為項目是vite項目,所以采用vite-plugin-html插件。本文作為使用記錄。結(jié)尾還有個疑問一直沒有解決,歡迎大神留言解答一下。

一、項目目錄

項目目錄如下,主要關(guān)注紅框的 html文件

二、index.html

三、vite.config.js

主要目的 是以template 值對應(yīng)的 html 為模板,為其注入一些動態(tài)值。這里主要是 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的結(jié)果

打包結(jié)果如預(yù)期,legal 整個文件夾都打到了dist 目錄下,并且html 需要注入的值也都對應(yīng)的注入進去了。

五、有個疑問

本地環(huán)境打不開 legal里的html,結(jié)果如下。但是 postman 可以獲取到 html 內(nèi)容。 線上生產(chǎn)環(huán)境也是沒有問題的,可以打開頁面。 歡迎大佬給出建議。

總結(jié)

到此這篇關(guān)于Vite處理html模板插件之vite-plugin-html插件使用的文章就介紹到這了,更多相關(guān)Vite vite-plugin-html插件內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • vue使用websocket實現(xiàn)實時數(shù)據(jù)推送功能

    vue使用websocket實現(xiàn)實時數(shù)據(jù)推送功能

    這篇文章主要為大家詳細(xì)介紹了vue如何使用websocket實現(xiàn)實時數(shù)據(jù)推送,發(fā)布訂閱重連單點登錄功能,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2023-12-12
  • 詳解vue-cli之webpack3構(gòu)建全面提速優(yōu)化

    詳解vue-cli之webpack3構(gòu)建全面提速優(yōu)化

    這篇文章主要介紹了詳解vue-cli之webpack3構(gòu)建全面提速優(yōu)化,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-12-12
  • vue+element-ui實現(xiàn)頭部導(dǎo)航欄組件

    vue+element-ui實現(xiàn)頭部導(dǎo)航欄組件

    這篇文章主要為大家詳細(xì)介紹了vue+element-ui實現(xiàn)頭部導(dǎo)航欄組件,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-09-09
  • Vue組件通信深入分析

    Vue組件通信深入分析

    對于vue來說,組件之間的消息傳遞是非常重要的,用vue可以是要組件復(fù)用的,而組件實例的作用域是相互獨立,這意味著不同組件之間的數(shù)據(jù)無法互相引用,一般來說,組件之間可以有幾種關(guān)系,下面是我對組件之間消息傳遞的常用方式的總結(jié)
    2022-08-08
  • Vue.js綁定HTML class數(shù)組語法錯誤的原因分析

    Vue.js綁定HTML class數(shù)組語法錯誤的原因分析

    Vue.js綁定HTML class數(shù)組語法錯誤有哪些原因?qū)е碌哪兀撊绾谓鉀Q呢?下面小編給大家分享Vue.js綁定HTML class數(shù)組語法錯誤的原因分析,感興趣的朋友一起看看吧
    2016-10-10
  • 最新評論