前端react框架實現打包時間動態加入配置展示在指定頁面

注意:

當前方法特定為 create-react-app?構建框架,其他的構建流程不同,不能直接照搬 react-scripts 的方式。

? 目標:

在 React 打包(build)時,自動將當前時間寫入代碼中某個變量或 console.log 中,例如:

console.log('Build Time: 2025-06-24 15:09');

? 實現思路:

React 默認使用 create-react-app(CRA),它基于 Webpack 構建系統。我們可以通過以下方式實現:

方法一:使用環境變量 + 構建腳本生成時間戳

步驟 1:創建一個?build.js?腳本,在打包前生成時間戳

在項目根目錄下新建一個文件:build.js

// build.js
const fs = require('fs');
const path = require('path');const now = new Date();
const formattedTime = now.toLocaleString('zh-CN', {year: 'numeric',month: '2-digit',day: '2-digit',hour: '2-digit',minute: '2-digit',second: '2-digit',hour12: false,
}).replace(/\//g, '-'); // 格式:2025-06-24 15:09:00const content = `export const BUILD_TIME = '${formattedTime}';`;fs.writeFileSync(path.resolve(__dirname, 'src/buildTime.js'), content);

這個腳本會在 src/ 下生成一個 buildTime.js 文件,內容類似:

export const BUILD_TIME = '2025-06-24 15:09';

步驟 2:在你的 React 項目中引用這個時間戳

比如在 index.js 或任意組件中引入并打印:

import { BUILD_TIME } from './buildTime';console.log(`Build Time: ${BUILD_TIME}`);

步驟 3:修改?package.json?中的 build 命令
"scripts": {"start": "react-scripts start","build": "node build.js && react-scripts build","test": "react-scripts test"
}

這樣每次執行 npm run build 時,都會先運行 build.js,自動生成最新的打包時間。


? 最終效果:

打包后輸出如下日志(在瀏覽器控制臺可見):

Build Time: 2025-06-24 15:09

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/911671.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/911671.shtml
英文地址,請注明出處:http://en.pswp.cn/news/911671.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

原子操作(CAS)

原子操作 原子操作原理什么是原子操作?原子性原子變量相關接口內存序 shared_ptr的實現 原子操作原理 什么是原子操作? 原子操作其實就是指在多線程的環境下,確保對共享變量的操作不會被干擾,從而避免了競態條件。 我們都知道&…

馬克思主義基本原理期末復習下

二十、資本的原始積累 所謂資本原始積累,就是以暴力手段使生產者與生產資料分離資本快速集中于少數人手中,資本主義得以快速發展的歷史過程。具體過程其一,用暴力手段奪取農民的土地,如英國圈地運動在國外建立殖民地,…

體育數據api接口,足球api籃球api電競api,比賽賽事數據api

在體育行業,數據驅動一切,從內容分發到競猜預測,從用戶互動到商業變現,背后少不了一個關鍵詞:數據接口(API)。無論是實時比分、比賽事件、歷史統計,還是球員詳情、戰績排名&#xff…

Harmony 狀態監聽 @Monitor和@Computed

Monitor與Computed裝飾器在ArkUI狀態管理中的協同應用 一、裝飾器概述 1. Monitor裝飾器 Monitor是ArkUI狀態管理V2中的核心裝飾器,用于深度監聽狀態變量的修改: 支持監聽嵌套類屬性、多維數組項和對象數組中的指定項變化能夠獲取變化前后的值進行比…

同濟大學多模態感知具身導航全面綜述

作者: I-Tak Ieong, Hao Tang 單位:同濟大學計算機學院,北京大學計算機學院 論文標題: Multimodal Perception for Goal-oriented Navigation: A Survey 論文鏈接:https://arxiv.org/pdf/2504.15643 主要貢獻 基于…

2025年CCF先進音頻技術競賽

由中國計算機學會主辦、CCF語音對話與聽覺專委會承辦、語音之家協辦、華為終端有限公司贊助的CCF先進音頻技術大賽正式啟動。大賽旨在推動國內高等院校及科研院所在音頻技術領域的專業人才培養,支持學生科技創新,選拔優秀人才。 賽事官網:ht…

手撕線程池

線程池的目的: 1.復用線程,減少頻繁創建和銷毀的開銷 創建和銷毀線程是昂貴的系統操作,涉及內核調度、內存分配; 使用線程池預先創建一批線程,在多個任務間循環復用,避免資源浪費,提高性能。 …

3DTiles三維模型

1. 3DTiles 介紹? 2016 年,Cesium 團隊借鑒傳統 2DGIS 的地圖規范:WMTS,借鑒圖形學中的層次細節模型,打造出大規模的三維數據標準:3d-Tiles,中文譯名:三維瓦片。 它在模型上利用了 gltf 渲染…

Golang Kratos 系列:業務分層的若干思考(一)

在使用 Kratos 框架開發云服務的過程中,漸漸理解和感受到“領域層”這個概念和抽象的強大之處,它可以將業務和存儲細節解耦、將業務和開發初期頻繁變更的API結構,讓Mock單元測試變得更加容易、對細節的變化更魯棒。讓業務代碼擺脫技術細節依賴…

深度優化OSS上傳性能:多線程分片上傳 vs 斷點續傳實戰對比

1 卸載開頭 對象存儲服務(OSS)已成為現代應用架構的核心組件,但隨著業務規模擴大,文件上傳性能問題日益凸顯。本文將深入探討兩種核心優化技術:多線程分片上傳和斷點續傳,通過理論分析、代碼實現和性能測試…

doris_工作使用整理

文章目錄 前言一、doris整體情況二、doris的存儲過程情況1.分類2. 同步物化視圖3. 異步物化視圖三,分區相關1.分區建的過多前言 提示:doris使用版本3.x 提示:以下是本篇文章正文內容,下面案例可供參考 一、doris整體情況 細節放大 二、doris的存儲過程情況 1.分類 按…

左神算法之單輔助棧排序算法

目錄 1. 題目2. 解釋3. 思路4. 代碼5. 總結 1. 題目 請編寫一個程序,對一個棧里的整型數據,按升序進行排序(即排序前棧里的數據是無序的,排序后最大元素位于棧頂)。要求最多只能使用一個額外的棧存放臨時數據&#xf…

使用Trae編輯器與MCP協議構建高德地圖定制化服務

目錄 一、使用Trae編輯器配置高德MCP Server 1.1 Trae介紹 1.2 從mcp.so中獲取配置高德地圖mcp server配置信息 1.3 高德地圖開發者配置 1.4 添加Filesystem 到Trae 1.5 使用結果展示 1.6 MCP常見命令行工具和包管理說明 1.7 Function Call工具和MCP技術對比 二、本地…

【LLaMA-Factory 實戰系列】三、命令行篇 - YAML 配置與高效微調 Qwen2.5-VL

【LLaMA-Factory 實戰系列】三、命令行篇 - YAML 配置與高效微調 Qwen2.5-VL 1. 引言2. 為什么從 WebUI 轉向命令行?3. 準備工作(回顧)4. 核心:創建并理解訓練配置文件4.1 選擇并復制基礎模板4.2 逐一解析與修改配置文件4.3 參數詳…

推薦:ToB銷售B2B銷售大客戶營銷大客戶銷售培訓師培訓講師唐興通講銷售技巧數字化銷售銷AI銷售如何有效獲取客戶與業績

站在AI浪潮之巔,重塑銷售之魂 在AI時代,普通銷售人員(TOB、TOC)除了傳統的銷售動作之外,還能做什么?怎么做? 這是《AI銷冠》這本書想探討的核心問題。 特別喜歡編輯老師總結的: 讀者…

爬取小紅書相關數據導入到excel

本期我們來進行實戰,爬取小紅書的相關數據導入到excel中,后續可進行些數據分析,今后或者已經在運營小紅書的小伙伴應該比較喜歡這些數據。今天我們的主角是DrissionPage,相對于之前介紹的selenium省去了很多的配置,直接安裝了就能使用。 DrissionPage 是一個基于 python …

c++面試題每日一學記錄- C++對象模型與內存對齊深度原理詳解

一、C++對象模型核心原理 1. 對象內存布局基礎原理 設計哲學: 零開銷原則:不為未使用的特性付出代價(如無虛函數則無vptr)兼容性:C結構體在C++中保持相同內存布局多態支持:通過虛函數表實現運行時動態綁定內存布局實現機制: 編譯器處理步驟: 成員排列:嚴格按聲明順序…

Kafka 監控與調優實戰指南(二)

五、Kafka 性能問題剖析 5.1 消息丟失 消息丟失是 Kafka 使用過程中較為嚴重的問題,可能由多種原因導致。在生產者端,如果配置不當,比如將acks參數設置為0,生產者發送消息后不會等待 Kafka broker 的確認,就繼續發送…

Linux下SVN報錯:Unable to connect to a repository at URL ‘svn://XXX‘

一、問題描述 Linux下通過SVN執行提交(commit)操作時報錯:Unable to connect to a repository at URL svn://XXX: 二、解決方法 導致該問題的一個可能原因是遠程倉庫的URL發生變化了,即svn服務器的ip變更了。這時可…

Modbus 掃描 從站號、波特率

下載鏈接:https://pan.quark.cn/s/533ceb8e397d 下載鏈接: https://pan.baidu.com/s/1PQHn-MwfzrWgF2UrXQDoGg 提取碼: 1111