Vue 项目增加版本号输出, 可用于验证是否更新成功

webpack

  1. vue.config.js 中增加以下配置, 此处以增加一个日期时间字符串为例, 具体内容可以根据自己需求自定义
javascript 复制代码
// vue.config.js
module.exports = {
    chainWebpack(config) {
        config.plugin('define').tap(args => {
          args[0]['process.env'].APP_VERSION = `${JSON.stringify(new Date().toLocaleString())}`
          return args
        })
    }
}
  1. 在main.js 中输出
javascript 复制代码
// main.js
console.log('build time:', process.env.APP_VERSION)
  1. 效果

vite

  1. 在vite.config.js 中增加配置, 此处已输出一个版本号+年月日时分秒的字符串为例
javascript 复制代码
// vite.config.js
import config from "./package.json"
import dayjs from "dayjs"

const verNum = `${config.version} ${dayjs().format("YYMMDDHHmm")}`

export default ({ mode }) => {
    return defineConfig({
        define: {
            "process.env.APP_VERSION": JSON.stringify(verNum),
        },
    })
}
  1. 在需要使用的界面用 process.env.APP_VERSION 取值
javascript 复制代码
// login.vue

<template>
    <div @click="fn">&nbsp; V{{ appVersion }}</div>
</template>

<script>
    data() {
        return {
            appVersion: process.env.APP_VERSION,
        }
    },
</script>
  1. 效果
相关推荐
wuli金居哇2 分钟前
我用 Turborepo 搭了个 Monorepo 脚手架,开发体验直接起飞!
前端
Asort4 分钟前
JavaScript 从零开始(五):运算符和表达式——从零开始掌握算术、比较与逻辑运算
前端·javascript
一枚前端小能手6 分钟前
🚀 缓存用错了网站更慢?前端缓存策略的5个致命误区
前端·javascript
艾小码7 分钟前
为什么你的页面会闪烁?useLayoutEffect和useEffect的区别藏在这里!
前端·javascript·react.js
艾小码8 分钟前
告别Vue混入的坑!Composition API让我效率翻倍的3个秘密
前端·javascript·vue.js
南雨北斗9 分钟前
VS Code 中手动和直接运行TS代码
前端
小高00711 分钟前
🔍说说对React的理解?有哪些特性?
前端·javascript·react.js
烛阴11 分钟前
【TS 设计模式完全指南】懒加载、缓存与权限控制:代理模式在 TypeScript 中的三大妙用
javascript·设计模式·typescript
Samsong11 分钟前
JavaScript逆向之反制无限debugger陷阱
前端·javascript
skykun12 分钟前
今天你学会JS的类型转换了吗?
javascript