Je souhaite utiliser l'adresse IP locale actuelle donnée dans mon projet React Native.
J'ai donc créé un fichier de script Powershell qui trouve l'adresse IP et l'enregistre dans une variable système$env:IPADDR
.
Write-Host "Getting current IP Address" $env:IPADDR = (Get-WmiObject -Class Win32_NetworkAdapterConfiguration | where {$_.DHCPEnabled -ne $null -and $_.DefaultIPGateway -ne $null}).IPAddress | Select-Object -First 1 Write-Host " ---->" $env:IPADDR
Maintenant, je souhaite passer cette variable dans le fichier.env
de mon projet.
Bien que$npm_package_name
fonctionne bien,$npm_package_name
工作正常,但$env:IPADDR
似乎不起作用。输出结果不是评估先前定义的环境变量,而是变量文字文本本身,即console.log(REACT_APP_API_URL) --> http://$env:IPADDR:3000/
而不是评估的结果http://192.168.10.4:3000/
ne semble pas fonctionner. Le résultat de sortie n'est pas l'évaluation de la variable d'environnement définie précédemment, mais le texte littéral de la variable lui-même, c'est-à-direconsole.log(REACT_APP_API_URL) --> http://$env:IPADDR:3000/
à la place. du résultat de l'évaluationhttp://192.168.10.4:3000/
.
Mon.env
fichier est créé ainsi.
REACT_APP_API_URL=http://$env:IPADDR:3000/ REACT_APP_NAME=$npm_package_name
Alors, qu’est-ce que j’ai fait de mal ? Comment utiliser les variables d'environnement PowerShell$env:IPADDR
动态评估REACT_APP_API_URL
pour évaluer dynamiquementREACT_APP_API_URL
?
J'ai trouvé qu'il n'y avait aucun moyen de travailler dans le fichier
.env
文件中本地扩展 Windows 环境变量。相反,我扩展了 PowerShell 脚本,通过直接在.env
pour "remplacer" les variables requises.Il s'agit du fichier de script final
run.ps1
PowerShell.