kon*_*orf 5 javascript firebase reactjs
在萤火虫示例项目 中package.json
有
"start": "sh -ac '. ./.env.dev; firebase use dev && react-scripts start'",
Run Code Online (Sandbox Code Playgroud)
在我的 Windows 10 上,它不适用于&&
:
现在使用别名 dev (firefly-boilerplate) 未知脚本“start”。反应脚本开始'
此脚本使用;
而不是&&
,应用程序启动,但它不连接数据库:
@firebase/firestore: Firestore (5.0.4): Could not reach Cloud Firestore backend. Connection failed 2 times. Most recent error: FirebaseError: [code=not-found]: The project firefly-boilerplate
does not exist or it does not contain an active Cloud Datastore database.
Run Code Online (Sandbox Code Playgroud)
所以我必须把 Api 密钥、域和项目名称.env.dev
放进index.js
去才能工作。为什么此脚本不适用于&&
?
什么sh -ac
命令呢?
sh
是用于运行 shell 的 POSIX 命令(shell 是为命令行终端提供动力的程序)。运行sh -ac
是说有效地“运行 shell 命令并自动导出在其运行期间分配的所有变量”。
一个.env
文件通常用来描述需要的脚本来运行本地的环境变量,所以sh -ac ./.env.dev
基本上是说负荷全部由环境变量.env.dev
。
然后,这些环境变量在后续命令中可用,通过&&
这些命令在单个上下文中执行多个命令。
简单地说,这个脚本对 Windows 不太友好。您想要做的是查看.env.dev
它正在设置的环境变量,然后在运行firebase
和react-scripts
命令之前在本地终端中设置这些变量。
归档时间: |
|
查看次数: |
1120 次 |
最近记录: |