J'ai un projet qui n'a pas été créé à l'aide de ng new
(j'ai plutôt suivi le guide quickstart ). Lorsque j'exécute une commande CLI angular dans ce projet (comme ng generate
) J'obtiens ce message d'erreur:
Vous devez être à l'intérieur d'un projet angular-cli pour utiliser la commande generate.
Existe-t-il un moyen de transformer mon projet existant en projet angular-cli? (Je voulais essayer de l'utiliser car il fonctionne apparemment automatiquement autour de n problème avec les importations de barils et SystemJS .)
Vous devriez pouvoir exécuter ng init
et suivez les invites. Jetez un œil à ce problème si vous avez besoin de conseils: https://github.com/angular/angular-cli/issues/755
Modifier (13 mars 2017):
ng-init
a été supprimé de la dernière version de angular cli. https://github.com/angular/angular-cli/pull/4628
Pour l'instant, vous devrez donc imiter ce qu'il a essayé d'accomplir. c'est à dire:
Créer un nouveau angular de nouveau myTemplate
Copiez les fichiers pertinents dans votre projet existant à partir de votre nouveau projet myTemplate:
.angular-cli.json package.json tslint.json src/polyfills.ts src/styles.css src/tsconfig.json
En fonction de l'état de votre application existante, vous souhaiterez peut-être copier plus ou moins. Je suppose que c'est pourquoi la fonctionnalité a été supprimée de la CLI. Il n'y a vraiment aucun moyen pour lui de savoir exactement ce que vous voulez qu'il fasse.
ng init
a été supprimé . Ce qui a fonctionné pour moi a été de créer manuellement un .angular-cli.json
fichier dans le dossier racine avec les clés suivantes:
{
"$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"
}
]
}
Vous devrez bien sûr modifier les valeurs en fonction de votre configuration.