我有一个未使用ng new
创建的项目(相反,我遵循了quickstart指南)。当我在该项目中运行角度CLI命令(例如ng generate
)时,我收到以下错误消息:
您必须在angular-cli项目中才能使用generate命令。
有没有办法可以将我现有的项目变成一个angular-cli项目? (我想尝试使用它,因为它显然可以自动解决an issue with barrel imports and SystemJS。)
答案 0 :(得分:19)
您应该可以运行ng init
并按照提示操作。如果您需要一些指导,请查看此问题:https://github.com/angular/angular-cli/issues/755
编辑(2017年3月13日):
ng-init
已从最新版本的角度cli中移除。
https://github.com/angular/angular-cli/pull/4628
所以现在你需要诉诸于它试图完成的事情。 即:
创建一个新的角度项目 新的myTemplate
从新的myTemplate项目中将相关文件复制到现有项目中:
.angular-cli.json 的package.json tslint.json SRC / polyfills.ts SRC / Styles.css中 SRC / tsconfig.json
根据您现有应用程序的状态,您可能希望更多或更少地复制。我想这就是从CLI中删除该功能的原因。它没有任何方法可以确切地知道你想要它做什么。
答案 1 :(得分:2)
ng init
has been removed。对我有用的是使用以下键在根文件夹中手动创建.angular-cli.json
文件:
{
"$schema": "./node_modules/@angular/cli/lib/config/schema.json",
"project": {
"version": "1.0.0",
"name": "new-cli"
},
"apps": [
{
"root": "src",
"outDir": "dist",
"assets": [
"assets"
],
"index": "index.html",
"main": "main.ts",
"polyfills": "polyfills.ts",
"prefix": "app",
"scripts": [],
"environmentSource": "environments/environment.ts"
}
]
}
您必须根据您的设置更改值。
答案 2 :(得分:-1)
ng init已从最新版本的angular CLI中删除,但是您可以使用 yarn软件包管理器来解决所有依赖关系。 为了使用纱线,您必须先安装它。
要在Ubuntu中安装yarn,请在终端中输入以下命令:
sudo apt-get update && sudo apt-get install yarn
对于Windows,您可以从以下位置下载纱线安装程序 here。
安装yarn之后,可以在项目目录中运行命令 yarn install ,该命令将下载项目的所有依赖项。
的其他信息答案 3 :(得分:-3)
尝试以下解决方案可能会有所帮助。
npm install -g angular-cli
ng new project_folder_name
cd project_folder_name
ng serve
运行项目(注意:现在在localhost:4200上,将运行演示项目)src
文件夹,并从项目的根文件夹替换为新创建的项目的src
。从现有项目中复制package.json中的所有内容。再次运行npm install。如果它中断,可能需要修改webpack.config