【发布时间】:2019-01-05 00:21:33
【问题描述】:
我希望能够在运行我的 react 应用程序时传递一个自定义服务器主机名,以便在我需要获取数据时在 url 中使用。服务器当前正在我的本地计算机上运行,所以当我 fetch(url) 时,我一直在使用“http://localhost:....”,它运行良好。但我希望能够传递自定义主机名,例如我的 ip 地址,以便在 url 中使用(即http://ipaddress:..。)。
我试过这样启动我的应用程序:
serverhost=ipaddress npm start
然后在我的 package.json 文件中
"scripts" : {
"start": "react-scripts start $serverhost"
}
在 start.js 中我可以访问 process.env.serverhost,但我希望能够访问浏览器中的主机名以进行实际的 fetch 调用。我不想在 package.json 或 .env 文件的“config”中设置主机名,因为它必须能够更改(我的印象是这是不可能的)。我只是希望能够访问在我的 src 文件中作为命令行参数给出的服务器主机名。
(我在某处读到过关于做的事情
REACT_APP_MY_VAR=test npm start
然后访问它
process.env.REACT_APP_MY_VAR
在 src 文件中,但是当我尝试 fetch(url) 时,我遇到了一堆解析 URL 错误的失败)
编辑:我尝试使用 REACT_APP 变量,并且在获取时不再出现解析 URL 错误
【问题讨论】:
-
创建一个
<base>标签,并发送与该基本网址相关的所有请求
标签: reactjs parameter-passing fetch command-line-arguments