<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      使用 cross-env 配置多環(huán)境變量:Vue、React、Angular 全指南

      在開(kāi)發(fā)前端項(xiàng)目時(shí),管理不同環(huán)境(開(kāi)發(fā)、測(cè)試、生產(chǎn))的變量是常見(jiàn)的需求。cross-env 是一個(gè)跨平臺(tái)的環(huán)境變量設(shè)置工具,能幫助開(kāi)發(fā)者在不同操作系統(tǒng)(如 Windows、macOS、Linux)中統(tǒng)一配置環(huán)境變量。本文將詳細(xì)介紹 cross-env 的安裝與使用,并覆蓋 Vue2、Vue3、React、Angular 四大框架的具體配置方法。

       


      一、什么是 cross-env?

      cross-env 解決了不同操作系統(tǒng)下環(huán)境變量設(shè)置的兼容性問(wèn)題。例如,在 Windows 中設(shè)置環(huán)境變量需使用 SET NODE_ENV=production,而 macOS/Linux 使用 export NODE_ENV=production。通過(guò) cross-env,開(kāi)發(fā)者只需一條命令即可跨平臺(tái)運(yùn)行,無(wú)需關(guān)注系統(tǒng)差異112。

       


       

      二、安裝 cross-env

      在所有框架中,安裝方式一致:

      npm install --save-dev cross-env
      

       


      三、通用配置方法

      1. 配置 package.json 腳本

      在 package.json 的 scripts 字段中,通過(guò) cross-env 定義環(huán)境變量。例如:

      {
        "scripts": {
          "dev": "cross-env NODE_ENV=development vite",
          "build:prod": "cross-env NODE_ENV=production vite build"
        }
      }
      
      • NODE_ENV 是常用變量,用于標(biāo)識(shí)當(dāng)前環(huán)境(development、production 等)

      2. 在代碼中讀取變量

      通過(guò) process.env.NODE_ENV 或其他自定義變量(如 VUE_APP_API_URL)獲取值。
      注意:部分框架對(duì)變量名有特定要求(如 Vue 要求以 VUE_APP_ 開(kāi)頭)

       


       

      四、框架專屬配置

      1. Vue2 項(xiàng)目

      步驟 1:配置環(huán)境文件

      • 在項(xiàng)目根目錄創(chuàng)建 .env.development 和 .env.production 文件:

        # .env.development
        VUE_APP_API_URL = http://localhost:3000
        
        # .env.production
        VUE_APP_API_URL = https://api.example.com
        

      步驟 2:修改 package.json

      {
        "scripts": {
          "dev": "cross-env NODE_ENV=development vue-cli-service serve",
          "build": "cross-env NODE_ENV=production vue-cli-service build"
        }
      }

      步驟 3:代碼中訪問(wèn)變量

      console.log(process.env.VUE_APP_API_URL);
      

        


       

      2. Vue3 項(xiàng)目(基于 Vite)

      步驟 1:配置環(huán)境文件

      • 創(chuàng)建 .env.localhost,.env.development 和 .env.production 文件:

        # .env.localhost
        VITE_API_URL = http://localhost:3000
        VITE_APP_ENV = 'localhost'
        

          

        # .env.development
        VITE_API_URL = http://test.com
        VITE_APP_ENV = 'development'

         注意:Vite 默認(rèn)以 VITE_ 開(kāi)頭的變量才會(huì)暴露給客戶端

      步驟 2:修改 package.json(自定義額外變量)

      {
        "scripts": {
          "dev": "cross-env NODE_ENV=development vite", //測(cè)試環(huán)境
         "dev:liMing": "cross-env VITE_USER_ID=158745 vite --mode localhost", // 本地環(huán)境
          "build": "cross-env NODE_ENV=production vite build"
        }
      } 
      

       

      步驟 3:代碼中訪問(wèn)變量

      // 本地環(huán)境
      console.log(import.meta.env.VITE_API_URL); // http://localhost:3000 console.log(import.meta.env.VITE_USER_ID); // 158745 console.log(import.meta.env.VITE_APP_ENV); // localhost
      // 測(cè)試環(huán)境
      console.log(import.meta.env.VITE_API_URL); // http://test.com console.log(import.meta.env.VITE_APP_ENV); // development

        

      3. React 項(xiàng)目(基于 Create React App)

      步驟 1:配置環(huán)境文件

      • 創(chuàng)建 .env.development 和 .env.production 文件:

        # .env.development
        REACT_APP_API_URL = http://localhost:3000
        

         注意:React 要求變量以 REACT_APP_ 開(kāi)頭

      步驟 2:修改 package.json

      {
        "scripts": {
          "start": "cross-env NODE_ENV=development react-scripts start",
          "build": "cross-env NODE_ENV=production react-scripts build"
        }
      } 

      步驟 3:代碼中訪問(wèn)變量

      console.log(process.env.REACT_APP_API_URL);

       


       

      4. Angular 項(xiàng)目

      步驟 1:配置環(huán)境文件

      在 src/environments 目錄下創(chuàng)建 environment.ts 和 environment.prod.ts

      // environment.ts(開(kāi)發(fā)環(huán)境)
      export const environment = {
        production: false,
        API_URL: 'http://localhost:3000'
      };
      

        

      // environment.prod.ts(生產(chǎn)環(huán)境)
      export const environment = {
        production: true,
        API_URL: 'https://api.example.com'
      };
      

        

      步驟 2:修改 angular.json

      在 angular.json 的 configurations 中指定環(huán)境文件:

      {
        "projects": {
          "your-project": {
            "architect": {
              "build": {
                "configurations": {
                  "production": {
                    "fileReplacements": [
                      {
                        "replace": "src/environments/environment.ts",
                        "with": "src/environments/environment.prod.ts"
                      }
                    ]
                  }
                }
              }
            }
          }
        }
      }
      

        

      步驟 3:代碼中訪問(wèn)變量

      import { environment } from '../environments/environment';
      console.log(environment.API_URL);
      

        


       

      五、常見(jiàn)問(wèn)題與技巧

        1. 變量未生效

          • 檢查變量名是否符合框架要求(如 VUE_APP_REACT_APP_112。

          • 重啟開(kāi)發(fā)服務(wù)器(環(huán)境變量通常在啟動(dòng)時(shí)加載)。

        2. 多環(huán)境擴(kuò)展
          可通過(guò)自定義變量名區(qū)分更多環(huán)境(如 NODE_ENV=staging),并創(chuàng)建對(duì)應(yīng)的 .env.staging 文件12。

        3. 安全提示

          • 敏感信息(如 API 密鑰)不應(yīng)暴露在前端代碼中,應(yīng)通過(guò)后端服務(wù)中轉(zhuǎn)。

          • 生產(chǎn)環(huán)境變量需避免硬編碼,推薦使用 CI/CD 工具動(dòng)態(tài)注入5。

       


       

      六、總結(jié)

      通過(guò) cross-env,開(kāi)發(fā)者可以輕松管理多環(huán)境變量,無(wú)需擔(dān)心跨平臺(tái)兼容性問(wèn)題。無(wú)論是 Vue、React 還是 Angular,核心邏輯均遵循以下步驟:

      1. 安裝 cross-env

      2. 配置 package.json 腳本;

      3. 創(chuàng)建環(huán)境文件或使用框架內(nèi)置環(huán)境管理;

      4. 在代碼中按需讀取變量。

      通過(guò)以上方法,即使是初級(jí)開(kāi)發(fā)者也能快速上手多環(huán)境配置,提升開(kāi)發(fā)效率。

       

      posted @ 2025-05-14 09:59  小短腿奔跑吧  閱讀(825)  評(píng)論(0)    收藏  舉報(bào)
      主站蜘蛛池模板: 丁香五月亚洲综合在线国内自拍| 女人被狂躁c到高潮| 国产亚洲精品岁国产精品| 欧美综合区自拍亚洲综合绿色| 国产精品爽爽久久久久久竹菊| 中文字幕av日韩有码| 无码av波多野结衣| 日本视频一区二区三区1| 开心五月激情综合久久爱| 日韩亚洲中文图片小说| 久久天天躁狠狠躁夜夜躁2020| 久久不卡精品| 岛国中文字幕一区二区| AV无码不卡一区二区三区| 国产精品色内内在线播放| 波多野结衣无内裤护士| 亚洲国产精品老熟女乱码| 在线视频观看| 国产精品免费AⅤ片在线观看| 精品人妻蜜臀一区二区三区| 黑人巨大精品欧美一区二区| 日本九州不卡久久精品一区| 亚洲精品国产一二三区| 杭锦旗| 国产在线中文字幕精品| 成人免费视频在线观看播放| 花莲市| brazzers欧美巨大| av资源在线看免费观看| 人人人澡人人肉久久精品| 亚洲欧洲av人一区二区| 精品国精品无码自拍自在线| 久久精品久久黄色片看看| 国产999久久高清免费观看| 邓州市| 国产成人无码区免费内射一片色欲| 狠狠躁夜夜躁人人爽天天古典| 亚洲综合精品第一页| 精品国产亚洲一区二区三区| 国产精品乱子乱xxxx| 又爽又黄又无遮挡的激情视频|