web-dev-qa-db-fra.com

Conversion d'un projet angular 2 angulaire existant pour utiliser angular CLI

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 .)

27
Coquelicot

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:

  1. Créer un nouveau angular de nouveau myTemplate

  2. 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.

19
Lucas Tétreault

ng inita é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.

2
Dilip Raj Baral