当运行终端命令ng server或ng serve——live-reload=true时,我得到了这个问题:
serve命令需要在Angular项目中运行,但是 找不到项目定义。
当运行终端命令ng server或ng serve——live-reload=true时,我得到了这个问题:
serve命令需要在Angular项目中运行,但是 找不到项目定义。
当前回答
解决了。我在ubuntu 18.04.01 LTS上也遇到了同样的问题。以上选项无效,因为我正在使用NVM(节点版本管理器)。解决方案是 创建项目前,请先使用命令 NVM使用10 (我的节点版本是10.15.0,所以我使用“nvm use 10”) 它将显示输出- 现在使用节点v10.15.0 (npm v6.4.1) 版本将根据不同的系统而有所不同。 然后创建新项目。
其他回答
你可以使用命令'ng update——all'来更新angular。这需要时间,但要确保所有组件都是最新的。
当您正在运行的项目不是angular项目时,会发生此错误。 虽然你已经下载了一个angular项目,但还没有安装所有的依赖项,这就是为什么ng serve命令对你不可用的原因。
只需导航到存储项目的路径并使用该命令
npm install
(注意- Node.js应该安装在你的系统中,如果你使用的是Angular 2或更高版本,在你运行这个命令之前,Angular cli也应该安装在你的系统中。 检查系统中是否安装了node.js 1)打开cmd(任何path- as node都应该在你的系统中全局安装) 2)使用命令
node -v
npm -v
获取节点和NPM版本)
还有一件重要的事情: 如果系统中安装的版本高于项目所需的版本,那么angular cli的版本不会有什么不同。 它会给出一个警告,但你可以忽略这个警告。
此错误通常可以追溯到对全局或本地CLI运行时的更新。为了检查这是否是问题所在,我们需要检查包。json文件。在这里,我们应该寻找@angular/cli依赖项。这应该指明用于创建项目的CLI版本。让我们记下这个值,因为我们稍后需要使用它来迁移我们的项目。
我们现在应该通过在终端窗口上输入以下命令来与当前的CLI运行时进行比较。
ng v
一个未处理的异常发生了:ENOENT:没有这样 文件或目录,scandir '~/your-app/node_modules',然后你忘记了 运行NPM install
控制台应该显示当前的CLI版本。如果版本不一致,则需要运行下面的命令将项目迁移到新的CLI版本。注意from version参数应该设置为@angular/cli设置中找到的值。
ng update @angular/cli --migrate-only --from=1.6.7
现在我们应该看一下我们的项目,应该注意到包中的CLI依赖版本发生了变化。json文件。也取决于你的CLI版本,.angular- CLI . conf。Json文件被删除,并创建一个新的angular. Json文件。创建Json文件。这是新CLI正在寻找的项目文件,因此是没有找到项目的错误的来源。通过添加这个文件,我们应该能够重新回到运行项目的轨道上。
我们应该能够输入以下命令,项目应该可以正常加载。
ng server
多亏了ozkary
最后,下面的命令为我解决了这个问题!
ng update --all --force
我也得到了这个问题,并通过运行下面的命令来解决。
ng update @angular/cli --migrate-only --from=<WhateverVersionYouAreCurrentlyOn>
e.g.
ng update @angular/cli --migrate-only --from=1.7.3
从这里获取裁判