# vie-plugin-html-insert

# background

链接

html文件中注入环境变量参数, vite中没有很好的 html plugin 插件来实现html的生成,而且html模板位置也没有特殊要求,类似于 webpack plugin,只是根据vite下打包方式不同,同样实现了一遍,除此之外,增加了 对 .env 文件的支持

# usage

使用参考 项目readme (opens new window)

# principle

# 1. html中变量的处理

vite plugin暴露了 configureServer钩子 (opens new window),方便我们在开发阶段处理一些内容,

通过注册一个中间件,来处理 客户端请求的html内容,并在返回前做一些加工处理。

{
    // ...
    configureServer({ middlewares, config }) {
            middlewares.use(async (req, res, next) => {
                // 处理后的内容返回回去
                res.end(content);
            });
        },
}

# 2. 环境变量的读取

.env环境变量的读取是通过 vite 暴露的 loadEnv() 方法来实现的,我们也无需判断模式,直接获取最后合并的 .env 环境变量

自己写一个的话,也可以这样来实现,代码参考 (opens new window),具体实现参考了 vite 源码 和 dotenv-expand包对 env 的加载处理。

上次更新于: 6/24/2022, 8:37:29 AM