使用react-native-dotenv在RN中切換環(huán)境變量

react-native-dotenv: https://github.com/goatandsheep/react-native-dotenv

以下 以Typescript 為例
使用步驟

  1. yarn add react-native-dotenv
  2. yarn add -D @types/react-native-dotenv
  3. 在babel.config.js文件中 plugins 字段中
[
      "module:react-native-dotenv",
      {
        moduleName: "@env",
        path: ".env",
        safe: false,
        allowUndefined: true,
      },
    ],
  1. 在需要的地方
import {API_URL} from '@env'

console.log(API_URL)
  1. 在根目錄下的.env 文件中
    API_URL=http://XXXX.com

  2. 創(chuàng)建env.d.ts文件 在一個目錄下,如/types

  3. 在tsconfig.json 中添加 指定定義的文件路徑

"typeRoots": ["./types"] ,

和compilerOptions 同級

問題點:
在react-native-dotenv 3.3.1版本時,(估計之前版本也有或者是RN的問題)
iOS打Production包時,無法讀取到.env文件
參考: 這個issue https://github.com/goatandsheep/react-native-dotenv/issues/38

雖說是Closed,但好像還有問題,
參考其中一個方法:
對于 iOS,把.env文件 拷貝一個到 /ios目錄下,這樣就能讀取到了。
cp .env ios/cp .env.production ios/

暫時解決

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容