Npm ';HTTPS';不被识别为内部或外部命令

Npm ';HTTPS';不被识别为内部或外部命令,npm,windows-10,command-prompt,yarnpkg,umijs,Npm,Windows 10,Command Prompt,Yarnpkg,Umijs,我想在Windows中运行React项目(作为Mac的虚拟机) 在命令提示符下,运行warn后安装依赖项。我做了纱线开始。它给了我“HTTPS”不能被识别为内部或外部命令的错误 > yarn start yarn run v1.13.0 $ HTTPS=true CERT=cert/localhost.crt KEY=cert/localhost.key umi dev 'HTTPS' is not recognized as an internal or external command

我想在Windows中运行React项目(作为Mac的虚拟机)

在命令提示符下,运行
warn
后安装依赖项。我做了
纱线开始
。它给了我
“HTTPS”不能被识别为内部或外部命令的错误

> yarn start
yarn run v1.13.0
$ HTTPS=true CERT=cert/localhost.crt KEY=cert/localhost.key umi dev
'HTTPS' is not recognized as an internal or external command,
operable program or batch file.
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
有人知道如何解决这个问题吗

编辑1

我将节点升级到
v12.16.1
warn
升级到
1.13.0
,npm升级到
6.13.4
),并且
warn添加了https
warn添加了https localhost
。但是,
纱线开始
仍然返回
'HTTPS'未被识别为内部或外部命令

umi-dev
返回的
未将“umi”识别为内部或外部命令、可操作程序或批处理文件。

>umi dev
'umi' is not recognized as an internal or external command, 
operable program or batch file.

在windows上,您需要在“set HTTPS=true”中包含“set”,以设置环境变量。

只需将以下行添加到
.env

HTTPS=true

PORT=8080

HOST=localhost

如果您想使用另一个主机或端口,可以随意将localhost替换为您想要的IP地址,并将端口替换为任何可用的端口号。如果没有
.env
文件,只需在react根文件夹中创建它即可

在此之后,您可以运行
warn start
npm start
,您的项目将暂时使用https而不是
http

而不是: “开始”:“CERT=CERT/localhost.crt KEY=CERT/localhost.KEY umi开发反应脚本开始”

请仅执行以下操作:
“开始”:“反应脚本开始”

我在Windows上遇到了同样的问题,但我没有使用“命令提示符”。 因此,如果您喜欢GitBash,这个答案可能会对您有所帮助

  • 第一步:保持package.json的原始格式,我们将在接下来的步骤中添加环境变量:


  • 第二步:创建一个将设置环境变量的文件:


  • 第三步:将环境变量添加到该文件中<代码>设置
  • 对我不起作用,但导出起作用:

    注意:默认端口为3000,因此如果您没有导出此文件中的端口,则React将从'https://localhost:3000"


  • 第四步:
    source
    文件。您基本上有两种选择:
    • 选项1:为了仅在当前会话中使用这些变量:

    • 选项2:为了在任何会话中使用这些变量,请将这些行添加到
      ~/.bashrc
      文件中:


  • 第五步:运行
    npm start
    warn start
    ,您应该在本地主机上使用https:

  • 注意:这里我没有导出端口,只是使用默认端口3000

    我只是删除 “开始”:“HTTPS=true反应脚本开始”, 到 “开始”:“反应脚本开始”,
    在package.json文件中,您需要https包。本地或全局安装。您是指
    SSL证书
    ?不是。我是指npm软件包检查:
    $HTTPS=true-CERT=CERT/localhost.crt-KEY=CERT/localhost.KEY-umi-dev
    ——它看起来像一个shell命令(Bourne/bash/Unix/Linux/POSIX),在设置变量
    HTTPS
    后调用命令
    umi-dev
    证书
    密钥
    。我不熟悉React或Thread,但可能是因为它不支持Windows,或者是因为某些配置错误,使它认为它在类Unix系统上?