web-dev-qa-db-fra.com

Angular 2 Impossible de lire la propriété 'config' de null

J'ai un problème avec Angular 2. Quand je veux démarrer le serveur, il obtient ceci:

$ ng serve
Cannot read property 'config' of null
TypeError: Cannot read property 'config' of null
at Class.run (C:\Users\Damien\Desktop\application\node_modules\@angul ar\cli\tasks\serve.js:22:63)
at check_port_1.checkPort.then.port (C:\Users\Damien\Desktop\application\node_modules\@angular\cli\commands\serve.js:103:26)
at process._tickCallback (internal/process/next_tick.js:103:7)

J'ai réinstallé CLI et rien d'autre ne fonctionne. Je pourrais être quelque chose avec le fichier JSON?

23
Damien

J'ai trouvé la solution! Dans mon cas, j'ai déplacé le projet dans un autre répertoire.
il y a un fichier caché appelé .angular-cli
Affichez le fichier caché dans l'ancien projet, copiez-le et collez-le dans le nouveau distention. Cela a résolu le problème pour moi.

44
Hasan Daghash

Vous supprimez probablement le projet dans un autre dossier ou supprimez .angular-cli.json 

Dans la racine de votre application, ajoutez: . angular-cli.json

et coller:

{
  "$schema": "./node_modules/@angular/cli/lib/config/schema.json",
  "project": {
    "name": "PROJECT_NAME"
  },
  "apps": [
    {
      "root": "src",
      "outDir": "dist",
      "assets": [
        "assets",
        "favicon.ico"
      ],
      "index": "index.html",
      "main": "main.ts",
      "polyfills": "polyfills.ts",
      "test": "test.ts",
      "tsconfig": "tsconfig.app.json",
      "testTsconfig": "tsconfig.spec.json",
      "prefix": "app",
      "styles": [
        "styles.css"
      ],
      "scripts": [],
      "environmentSource": "environments/environment.ts",
      "environments": {
        "dev": "environments/environment.ts",
        "prod": "environments/environment.prod.ts"
      }
    }
  ],
  "e2e": {
    "protractor": {
      "config": "./protractor.conf.js"
    }
  },
  "lint": [
    {
      "project": "src/tsconfig.app.json"
    },
    {
      "project": "src/tsconfig.spec.json"
    },
    {
      "project": "e2e/tsconfig.e2e.json"
    }
  ],
  "test": {
    "karma": {
      "config": "./karma.conf.js"
    }
  },
  "defaults": {
    "styleExt": "css",
    "component": {}
  }
}
32
Carnaru Valentin

Veuillez ajouter le fichier suivant au dossier racine Nom de fichier-.angular-cli.json

{
    "$schema": "./node_modules/@angular/cli/lib/config/schema.json",
    "project": {
        "name": "XXXX"
    },
    "apps": [
        {
            "root": "src",
            "outDir": "dist",
            "assets": [
                "assets",
                "favicon.ico"
            ],
            "index": "index.html",
            "main": "main.ts",
            "polyfills": "polyfills.ts",
            "test": "test.ts",
            "tsconfig": "tsconfig.app.json",
            "testTsconfig": "tsconfig.spec.json",
            "prefix": "app",
            "styles": [
                "assets/css/styles.css"

            ],
            "scripts": [
                "assets/js/project.js"      

            ],
            "environmentSource": "environments/environment.ts",
            "environments": {
                "dev": "environments/environment.ts",
                "prod": "environments/environment.prod.ts"
            }
        }
    ],
    "e2e": {
        "protractor": {
            "config": "./protractor.conf.js"
        }
    },
    "lint": [
        {
            "project": "src/tsconfig.app.json"
        },
        {
            "project": "src/tsconfig.spec.json"
        },
        {
            "project": "e2e/tsconfig.e2e.json"
        }
    ],
    "test": {
        "karma": {
            "config": "./karma.conf.js"
        }
    },
    "defaults": {
        "styleExt": "css",
        "component": {}
    }
}
9

il vous manque .angular-cli.json, 

vous pouvez le générer par (allez dans un nouveau dossier)

 ng new project-name

copiez maintenant le fichier .angular-cli.json à la racine de votre projet. 

 ng serve 

l'erreur devrait être partie. 

5
hoogw

cette erreur vient en raison de la suppression de .angular-cli.json donc ajoutez d'abord ceci sur le dossier racine . si après cela obtenez toujours une erreur, vérifiez le fichier statique dans .angular-cli.json

3
Amit K

https://angular.io/guide/quickstart

Étape 3: Servir l'application Accédez au répertoire project et au lance le serveur.

content_copy cd my-app ng servir - ouvert

Peut-être avez-vous manqué le point 3 (cd my-app)? Le répertoire de démarrage était comme: ./my-app/my-app.Si vous démarrez une application à partir d'un autre répertoire, nous obtenons cette erreur.

Assurez-vous que vous êtes dans le dossier du projet. Cela peut arriver lorsque le programmeur a un dossier à des fins de pratique, par exemple: dit le dossier "MyWorkOuts" . Dans lequel le programmeur peut avoir beaucoup d'applications pratiques qui dit: practice1, practice2, etc. 

J'utilise le code VSin qui m'assure que le terminal est dans l'application angulaire exacte que vous essayez de démarrer. 

cela peut paraître simple ou même idiot. Mais tout en apprenant tout se passe. après s’être assuré que vous pouvez suivre les autres solutions de nos amis stackoverflow. 

Merci les gars Bonne journée :-)

1
Rinold

Ma première suggestion serait de mettre à jour Angular CLI en suivant ces instructions ici . Ce sujet est un peu couvert ici . Le coupable habituel est une mise à jour de Angular CLI sans suivre les instructions ci-dessus, mais vous ne donnez aucun détail sur votre situation.

1
J. Adam Connor

Le problème peut être dû à un fichier .angular-cli.json égaré, n'oubliez pas l'extension .json qui implique le format du fichier. Copiez ce fichier à partir du projet original et collez-le dans votre projet actuel.

0
Alvin Mutisya