UNPKG

@_lan/web-libs

Version:

<div align="center"> <img src="./public/favicon.svg" width="160" /> <h1>SoybeanAdmin AntDesign</h1> <span>中文 | <a href="./README.en_US.md">English</a></span> </div>

38 lines (28 loc) 1.09 kB
const fs = require('node:fs'); const path = require('node:path'); // 1. 读取 package.json const packagePath = path.resolve(process.cwd(), 'package.json'); const packageData = fs.readFileSync(packagePath, 'utf8'); try { // 2. 解析 JSON const packageObj = JSON.parse(packageData); if (!packageObj.version) { throw new Error('package.json 未找到 version 字段'); } // 3. 拆分版本号并更新 const versionParts = packageObj.version.split('.').map(Number); if (versionParts.length < 3 || versionParts.some(isNaN)) { throw new Error(`无效的版本号格式: ${packageObj.version}`); } // 增加补丁版本号 versionParts[2] += 1; const newVersion = versionParts.join('.'); // 4. 更新 version 字段 packageObj.version = newVersion; // 5. 写回文件(保留格式) fs.writeFileSync(packagePath, `${JSON.stringify(packageObj, null, 2)}\n`, 'utf8'); console.log(`✅ 版本号已更新: ${packageObj.version}${newVersion}`); } catch (error) { console.error(`❌ 更新失败: ${error.message}`); process.exit(1); }