当我在我的终端上输入create-react-app my-app命令时,它似乎工作了-下载所有库成功等。在该过程结束时,我得到一个消息,没有提供模板。

输入

user@users-MacBook-Pro-2 Desktop% create-react-app my-app

输出

Creating a new React app in /Users/user/Desktop/my-app.

Installing packages. This might take a couple of minutes.
Installing react, react-dom, and react-scripts...
..... nothing out of the ordinary here .....
✨  Done in 27.28s.

A template was not provided. This is likely because you're using an outdated version of create-react-app.
Please note that global installs of create-react-app are no longer supported.

在包中。my-app的Json:

"dependencies": {
  "react": "^16.12.0",
  "react-dom": "^16.12.0",
  "react-scripts": "3.3.0" <-- up-to-date
}

我检查了CRA更改日志,它看起来像是增加了对自定义模板的支持-但是它看起来不像命令create-react-app my-app会改变。

知道这是怎么回事吗?


当前回答

这解决了我的问题

步骤:

1.卸载create-react应用程序

npm uninstall -g create-react-app

2.现在就用

npx create-react-app my-app

这将自动为u创建模板。

其他回答

这是一个奇怪的问题,因为这个昨天为我工作,今天早上我遇到了同样的错误。根据发布说明,添加了一个新特性来支持模板,因此看起来命令行中的一些部分已经发生了变化(例如,——typescript被弃用而使用——template typescript)

我做到了以下几点:

卸载全局create-react-app npm npm cache校验。 关闭终端。我使用mac终端,如果使用IDE可能关闭并重新打开。 重新打开终端,浏览到你想要的项目,并通过npx使用新的模板命令约定运行create-react-app。为了让它工作,我使用了文档站点的typescript my-app来确保一致性:npx create-react-app my-app——template typescript

如果运行正常,您应该看到多个安装:一个用于react-scripts,一个用于模板。错误消息也应该不再出现。

对于Windows 10,我必须手动删除yarn缓存中的一些文件夹,我的路径是C:\Users\username\AppData\Local\Yarn\Cache\v1,我必须删除的文件夹是npm-create-react-app-1.0.0-1234567890abcdef

我上周也遇到了同样的问题。我尝试了答案部分提供的许多方法。但现在情况不同了。这个create-react-app的最新版本提供了2个模板。

1. cra-template

2. cra-template-typescript

如果使用javascript,请选择cra-template。如果你使用typescript,请使用cra-template-typescript。

首先,你必须卸载create-react-app。(如果您有最新版本,请忽略此步骤。)

 npm uninstall -g create-react-app

再次安装最新版本的create-react-app

npm install create-react-app@latest

现在您必须像这样导入模板。(如果你使用typescript,请使用"cra-template-typescript"而不是"cra-template"。My-app用作名称。你可以给它起任何名字)。

npx create-react-app my-app --template cra-template

现在将下载模板。但请记住,这并不等于过去的版本。(不同的)

快乐的编码。

先清空你的npm缓存,然后使用yarn,如下所示:

NPM缓存清理——force NPM缓存验证 Yarn创建my-app

我希望这能有所帮助。

EDIT

...在我进一步研究了这个问题之后,你可能想尝试以下方法:

NPM卸载-g create-react-app Yarn全局删除create-react-app which create-react-app -如果它返回一些东西(例如/usr/local/bin/create-react-app),然后执行rm -rf /usr/local/bin/create-react-app手动删除。 NPM缓存清理——force NPM缓存验证 npx create-react-app@latest

These steps should remove globally installed create-react-app installs, you then manually remove the old directories linked to the old globally installed create-react-app scripts. It's then a good idea to clear your npm cache to ensure your not using any old cached versions of create-react-app. Lastly create a new reactjs app with the @latest option like so: npx create-react-app@latest. There has been much confusion on this issue where no template is created when using npx create-react-app, if you follow the steps I have stated above (1-6) then I hope you'll have success.

p.s.

如果我想在一个叫client的目录中创建一个react应用程序,那么我会在终端中输入以下命令:

NPX create-react-app@latest ./client

祝你好运。

NPM uninstall -g create-react-app在某些情况下可能是一个答案,但在我的情况下不是。

您应该手动删除位于~/的create-react-app。Node /bin/或/usr/bin/(只需输入create-react-app,并使用rm -rf将其从您看到的位置删除),接下来只需运行NPM I -g create-react-app。

之后,create-react-app将正常工作。