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. 效果
相关推荐
代码搬运媛8 小时前
Jest 测试框架详解与实现指南
前端
counterxing9 小时前
我把 Codex 里的 Skills 做成了一个 MCP,还支持分享
前端·agent·ai编程
wangqiaowq9 小时前
windows下nginx的安装
linux·服务器·前端
之歆9 小时前
DAY_12JavaScript DOM 完全指南(二):实战与性能篇
开发语言·前端·javascript·ecmascript
发现一只大呆瓜9 小时前
Vite凭什么这么快?3分钟带你彻底搞懂 Vite 热更新的幕后黑手
前端·面试·vite
Maimai108089 小时前
React如何用 @microsoft/fetch-event-source 落地 SSE:比原生 EventSource 更灵活的实时推送方案
前端·javascript·react.js·microsoft·前端框架·reactjs·webassembly
candyTong10 小时前
Claude Code 的 Edit 工具是怎么工作的
javascript·后端·架构
kyriewen11 小时前
产品经理把PRD写成“天书”,我用AI半小时重写了一遍,他当场愣住
前端·ai编程·cursor
humcomm12 小时前
元框架的工作原理详解
前端·前端框架
canonical_entropy12 小时前
Attractor Before Harness: AI 大规模开发的方法论
前端·aigc·ai编程