Angular2 QuickStart npm start ne fonctionne pas correctement


105

Structure des fichiers

Je sais que la version bêta d'Angular2 vient de sortir mais je ne peux pas reproduire les étapes de leur tutoriel officiel sur le site ( https://angular.io/guide/quickstart ). Peut-être que quelqu'un a eu des problèmes similaires et sait quoi faire pour résoudre ce problème? Lorsque j'essaye de démarrer l'application avec la npm startcommande, j'obtiens une sortie comme celle-ci:

0 info it worked if it ends with ok
1 verbose cli [ 'node', '/usr/local/bin/npm', 'start' ]
2 info using npm@2.7.4
3 info using node@v0.12.2
4 verbose run-script [ 'prestart', 'start', 'poststart' ]
5 info prestart angular2-quickstart@1.0.0
6 info start angular2-quickstart@1.0.0
7 verbose unsafe-perm in lifecycle true
8 info angular2-quickstart@1.0.0 Failed to exec start script
9 verbose stack Error: angular2-quickstart@1.0.0 start: `concurrent "npm run tsc:w" "npm run lite" `
9 verbose stack Exit status 127
9 verbose stack     at EventEmitter.<anonymous> (/usr/local/lib/node_modules/npm/lib/utils/lifecycle.js:213:16)
9 verbose stack     at EventEmitter.emit (events.js:110:17)
9 verbose stack     at ChildProcess.<anonymous> (/usr/local/lib/node_modules/npm/lib/utils/spawn.js:14:12)
9 verbose stack     at ChildProcess.emit (events.js:110:17)
9 verbose stack     at maybeClose (child_process.js:1015:16)
9 verbose stack     at Process.ChildProcess._handle.onexit (child_process.js:1087:5)
10 verbose pkgid angular2-quickstart@1.0.0
11 verbose cwd /Users/tmrovsky/Documents/angular2/angular2-quickstart
12 error Darwin 13.4.0
13 error argv "node" "/usr/local/bin/npm" "start"
14 error node v0.12.2
15 error npm  v2.7.4
16 error code ELIFECYCLE
17 error angular2-quickstart@1.0.0 start: `concurrent "npm run tsc:w" "npm run lite" `
17 error Exit status 127
18 error Failed at the angular2-quickstart@1.0.0 start script 'concurrent "npm run tsc:w" "npm run lite" '.
18 error This is most likely a problem with the angular2-quickstart package,
18 error not with npm itself.
18 error Tell the author that this fails on your system:
18 error     concurrent "npm run tsc:w" "npm run lite"
18 error You can get their info via:
18 error     npm owner ls angular2-quickstart
18 error There is likely additional logging output above.
19 verbose exit [ 1, true ]

J'avais: la version dactylographiée 1.7.5 version 0.12.2 du nœud

Peut-être que quelqu'un pourrait aider à résoudre le problème :)?

package.json:

{
  "name": "angular2-quickstart",
  "version": "1.0.0",
  "scripts": {
    "tsc": "tsc",
    "tsc:w": "tsc -w",
    "lite": "lite-server",
    "start": "concurrent \"npm run tsc:w\" \"npm run lite\" "
  },
  "license": "ISC",
  "dependencies": {
    "angular2": "2.0.0-beta.0",
    "systemjs": "0.19.6",
    "es6-promise": "^3.0.2",
    "es6-shim": "^0.33.3",
    "reflect-metadata": "0.1.2",
    "rxjs": "5.0.0-beta.0",
    "zone.js": "0.5.10"
  },
  "devDependencies": {
    "concurrently": "^1.0.0",
    "lite-server": "^1.3.1",
    "typescript": "^1.7.3"
  }
}

index.html:

<html>

<head>
    <title>Angular 2 QuickStart</title>

    <!-- 1. Load libraries -->
    <script src="node_modules/es6-shim/es6-shim.js"></script>
    <script src="node_modules/angular2/bundles/angular2-polyfills.js"></script>
    <script src="node_modules/systemjs/dist/system.src.js"></script>
    <script src="node_modules/rxjs/bundles/Rx.js"></script>
    <script src="node_modules/angular2/bundles/angular2.dev.js"></script>

    <!-- 2. Configure SystemJS -->
    <script>
        System.config({
            packages: {
                app: {
                    format: 'register',
                    defaultExtension: 'js'
                }
            }
        });
        System.import('app/boot')
                .then(null, console.error.bind(console));
    </script>

</head>

<!-- 3. Display the application -->
<body>
<my-app>Loading...</my-app>
</body>

</html>

app.components.ts:

import {Component} from 'angular2/core';

@Component({
    selector: 'my-app',
    template: '<h1>My First Angular 2 App</h1>',
})

export class AppComponent {}

boot.js:

import {bootstrap} from 'angular2/platform/browser'
import  {AppComponent} from './app.component'

bootstrap(AppComponent);

Pourriez-vous modifier votre message avec vos fichiers s'il vous plaît?
Romain du

Quelle est votre structure de dossiers? est l'index.html app/dedans ou dehors?
the_critic

Tout d' abord, votre fichier boot.js doit être un fichier tapuscrit comme renomme boot.ts . Je ne vois rien d'autre qui semble faux ... Comme l' a dit the_critic , pourriez-vous nous donner la structure de votre projet.
Romain du

C'est boot.ts. J'ai tapé «js» ici sur stackoverflow par erreur - désolé. L'index html est à la racine comme package.json par exemple. Ce n'est pas dans le répertoire app /.
Tomasz Ciunel

2
Assurez-vous que votre version de nœud est >=4.2.1 <5et que votre version npm est >=2.14.7 <3.0telle que spécifiée dans le guide DEVELOPER . Je pense que vous pouvez le faire fonctionner avec le nœud 5, mais je ne sais pas comment.
Eric Martinez

Réponses:


224

Changez le startchamp dans package.json de

"start": "tsc && concurrently \"npm run tsc:w\" \"npm run lite\" "

à

"start": "concurrently \"npm run tsc:w\" \"npm run lite\" "

2
Pourquoi a-t-il lancé tsc deux fois ( tscet tsc -w)?
smartmouse

9
Ça a marché! Mais pourquoi? Commencé à se décourager dans ng2.
Maxim

9
Dans le cours "play by play angular 2 quick start" sur Pluralsight Ward Bell l'explique. "tsc" compile d'abord le code car sans cela, dans un projet plus grand, il est possible que le serveur démarre avant la fin de la compilation. Dans ce cas, le serveur lèverait une erreur indiquant qu'il ne sait pas quoi faire.
Starceaker

1
En 2017, votre solution de contournement dans votre réponse a révélé le vrai problème, à savoir qu'il y avait des erreurs de compilation dans le script dactylographié dans le code de l'application. Lorsque j'ai corrigé les erreurs de compilation, la version originale fonctionnait correctement sans votre solution de contournement.
CodeMed

1
Excellent ... "start": "simultanément \" npm run tsc: w \ "\" npm run lite \ "" a fonctionné pour moi ...
DILIP KOSURI

86

Afin de pouvoir npm startfonctionner pour moi, je devais m'assurer d'avoir installé globalement certaines des dépendances devDependencies. As-tu essayé:

  • npm install -g concurrently
  • npm install -g lite-server
  • npm install -g typescript

mais je pense que lite-serverc'est facultatif, vous pouvez également utiliser d'autres services
Pardeep Jain

11
A travaillé pour moi. sudo npm update -g && sudo npm install -g concurrently lite-server typescript.
Sam Finnigan

6
n'oubliez pas de désinstaller la version locale:npm uninstall lite-server
Aurelien

1
J'ai eu le même problème lors du démarrage du serveur Web en utilisant angular2-seed du cours Udemy. Cela a résolu mon problème.
dance2die

Oui! installer le serveur lite globalement et désinstaller le paquet local a finalement fonctionné pour moi sur Vagrant! Merci beaucoup!
Yahya Uddin

48

Vous devez d'abord mettre à jour npm, lite-server et dactylographié:

sudo npm update -g && sudo npm install -g concurrently lite-server typescript

Supprimez le dossier node_modules de votre répertoire de projet Angular (s'il existe). Prochaine exécution:

npm install

Après cela, résolvez les erreurs ENOSPC:

echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p

Finalement:

npm start

Voici mon fichier package.json:

{
  "name": "reservationsystem",
  "version": "0.0.1",
  "scripts": {
    "tsc": "tsc",
    "tsc:w": "tsc -w",
    "lite": "lite-server",
    "start": "concurrent \"npm run tsc:w\" \"npm run lite\" "
  },
  "dependencies": {
    "a2-in-memory-web-api": "~0.1.0",
    "angular2": "2.0.0-beta.3",
    "es6-promise": "^3.0.2",
    "es6-shim": "^0.33.3",
    "reflect-metadata": "0.1.2",
    "rxjs": "5.0.0-beta.0",
    "systemjs": "0.19.17",
    "zone.js": "0.5.11"
  },
  "devDependencies": {
    "concurrently": "^1.0.0",
    "lite-server": "^2.0.1",
    "typescript": "^1.7.5"
  }
}


3
J'ai voté parce que cela a résolu mon problème. Cependant, j'aimerais comprendre comment l'ajout de fs.inotify.max_user_watches à / etc / sysctl l'a corrigé.
Joshua Wilson

Il semble que l'observateur ait besoin de plus de mémoire et cela fournit cela.
Joshua Wilson

J'ai trouvé que cela semblait mieux fonctionner lorsque j'ai d'abord supprimé les modules - rm -r node_modules/. Quoi qu'il en soit, comme le dit l'homme, cela m'a fait avancer; Je suis frappé que fs.inotify.max_user_watches=524288cela me paraisse excessif. Y a-t-il une meilleure santé mentale dans le vent?
sera

Il convient d'ajouter que le démarrage rapide Javascript se déclenche dès la sortie de la boîte. PAS d'énormes extras. Et lorsque le serveur arrête la page Web stays on screen. La version dactylographiée disparaît avec une bouffée de fumée
sera

cela m'a sauvé, merci. echo fs.inotify.max_user_watches = 524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p
chintan adatiya

15

J'ai eu la même erreur sur Windows 10. Il semble que ce soit un problème avec le package npm simultanément. J'ai trouvé 2 options pour résoudre cette erreur:

  • 1. Exécutez les deux commandes dans 2 cmds distincts:

    • dans la première exécution: npm run tsc:w
    • dans le second: npm run lite
  • 2. Changer package.json

    • changez simplement l'option de démarrage en ceci: "start": "tsc && npm run tsc:w | npm run lite",

2
Juste à noter. Sous Linux:"start": "tsc && npm run tsc:w & npm run lite",
ACV

Eh bien, c'est une recompilation automatique pour moi.
dontHaveName le

Je faisais référence à mon premier commentaire :) sur linux cela ne fonctionnera pas
ACV

Seule cette solution a fonctionné pour moi. Essayé en premier (exécutez les deux commandes dans 2 cmds séparés). Puis arrêté le processus dans les deux cmds. Enfin, appliquez le second (change package.json) et exécutez "npm start" dans un seul cmd. Si je change un fichier, localhost: 3000 s'actualise automatiquement et affiche mes modifications. Merci beaucoup!
Andrew F.

13

Voici comment j'ai résolu le problème aujourd'hui après des heures à essayer toutes ces différentes solutions - (pour tous ceux qui recherchent encore un autre moyen).

Ouvrez 2 instances de cmd dans votre répertoire de démarrage rapide:

fenêtre n ° 1:

npm run build:watch

puis...

fenêtre n ° 2:

npm run serve

Il s'ouvrira ensuite dans le navigateur et fonctionnera comme prévu


9

J'ai eu un problème similaire après avoir copié le dossier angular2-quickstart (y compris node_modules) pour créer le dossier angular2-tour-of-heroes. C'était bizarre parce que l'original se compilait bien mais la copie ne l'était pas ...

npm run tsc

J'ai pu résoudre le problème en supprimant le dossier node_modules et en relançant l'installation de npm .

Cela a été une surprise pour moi, j'ai donc fait une différence entre les 2 dossiers ...

diff -rw angular2-quickstart/node_modules/ angular2-tour-of-heroes/node_modules/

il y avait BEAUCOUP de différences, beaucoup de différences 'where' dans les fichiers package.json comme ceci: -

diff -rw angular2-quickstart/node_modules/yargs/package.json angular2-tour-of-heroes/node_modules/yargs/package.json
5c5
<       "/Users/michael/Tutorials/angular2/angular2-quickstart/node_modules/lite-server"
---
>       "/Users/michael/Tutorials/angular2/angular2-tour-of-heroes/node_modules/lite-server"

... ce qui a du sens mais il y en avait aussi comme ça: -

diff -rw angular2-quickstart/node_modules/utf-8-validate/build/gyp-mac-tool angular2-tour-of-heroes/node_modules/utf-8-validate/build/gyp-mac-tool
607c607,608
<       return {k: self._ExpandVariables(data[k], substitutions) for k in data}
---
>       return dict((k, self._ExpandVariables(data[k],
>                                             substitutions)) for k in data)

... ce que je ne comprends pas du tout.

Eh bien, j'espère que cela aide.


5

Modifiez le champ de début dans package.json de:

"start": "tsc && concurrently \"npm run tsc:w\" \"npm run lite\" "

À:

"start": "concurrently \"npm run tsc:w\" \"npm run lite\" "

Cela a vraiment aidé.


5

Cette réponse est en relation avec l'excellent cours Pluralsight "Angular 2 Fundamentals" de Jim Cooper.

Si, comme moi, vous rencontrez des difficultés pour démarrer l'exécution de la commande npm start sur une machine Windows 10, je suggère ce qui suit:

Démarrez git bash en tant qu'administrateur (suivez les étapes de la vidéo) Accédez au répertoire du projet ( ng2-fundamentals ), puis tapez les commandes suivantes:

npm config get registry

npm cache clean

npm install

Une fois l'installation terminée, vous devrez modifier le fichier get-shell.js situé dans le module spawn-default-shell dans le dossier node_modules comme suit:

Modifiez ce qui suit:

const DETECT_SH_REGEX = /sh$/;

pour ça:

const DETECT_SH_REGEX = /sh/;

Notez le $ supprimé à la fin de la chaîne sh (crédit à l'auteur original de ce correctif alfian777 qui a publié la solution sur github )

Enregistrez le fichier, puis accédez à votre console git bash et tapez npm start

Vous ne devriez voir aucune erreur maintenant et la page localhost démarrera dans votre navigateur par défaut (vous pouvez également ouvrir votre navigateur et accéder à http: // localhost: 8808 / ).


3

Aucune de ces réponses n'a aidé avec Ubuntu . Enfin, je suis tombé sur une solution de John Papa (l'auteur de lite-server).

Sur Ubuntu 15.10, le démarrage rapide Angular 2 a pris vie après avoir exécuté ceci sur le terminal:

echo fs.inotify.max_user_watches = 524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p

Apparemment, cela augmente le nombre de File Watches disponibles.

Source de la réponse: https://github.com/johnpapa/lite-server/issues/9


3

J'ai rencontré ce même problème. Cependant, aucune des réponses ci-dessus n'était une solution appropriée pour moi. Il s'avère que c'était davantage dû à mon environnement de développement qu'à n'importe laquelle des versions des choses.

Depuis que j'ai utilisé Visual Studio Code, j'ai configuré une tâche de construction dans VSC pour compiler TypeScript en tant qu'observateur. C'était le problème. VSC avait déjà commencé une tâche NPM pour TSC et donc lors de l'exécution du script de démarrage du didacticiel, il avait des problèmes avec le fait que VSC était toujours en cours d'exécutiontsc -w .

J'ai arrêté la tâche dans VSC et relancé le script de «démarrage» et cela a très bien fonctionné.

Solution A: Arrêter et démarrer npm

  • Commande VSC> Tâches: terminer les tâches en cours
  • Terminal $ npm start

Après cela, pour que tout fonctionne ensemble, je change le script de démarrage pour simplement démarrer le serveur et ne pas lancer réellement TSC.

Solution B: modifier le script de démarrage npm

  • Remplacer

    "start": "concurrent \"npm run tsc:w\" \"npm run lite\" "

  • avec

    "start": "npm run lite"

Solution C: exécutez simplement la commande de serveur lite

`npm run lite`

3

J'ai résolu mon problème avec le programme Quick Start en suivant le lien ci-dessous.

Erreur de serveur Live Angular 2 QuickStart

Modifier les Package.jsonparamètres des scripts

"start": "tsc && concurrently \"npm run tsc:w\" \"npm run lite\",

à:

"start": "concurrently \"npm run tsc:w\" \"npm run lite\" ",

2

Cette réponse est réservée aux utilisateurs de Windows 10 et comme vous le verrez ci-dessous, je soupçonne que le problème ne se produit que pour ces utilisateurs:

Pour savoir ce qui se passe, vous pouvez exécuter la commande sur PowerShell et elle vous indiquera quel est le problème réel:

PS C:\Users\Laurent-Philippe> tsc && concurrently "tsc -w" "lite-server"
At line:1 char:5
+ tsc && concurrently "tsc -w" "lite-server"
+     ~~
The token '&&' is not a valid statement separator in this version.
    + CategoryInfo          : ParserError: (:) [], ParentContainsErrorRecordException
    + FullyQualifiedErrorId : InvalidEndOfLine

En gros, le message explique que le token "&&" n'est pas encore valide avec Windows 10. Et pour ceux qui se demandent, la même commande remplaçant && par &, nous a informés que l'opérateur esperluette est réservé pour une utilisation future:

 (&) character is not allowed. The & operator is reserved for future use; wrap an ampersand in double quotation marks ("&") to pass it as part of a string.

Conclusions :

  • si vous souhaitez lancer manuellement cette commande à partir du PowerShell, vous pouvez l'utiliser à la place:

    tsc "&" simultanément "tsc -w" "lite-server"

  • si vous souhaitez lancer votre application avec npm start, remplacez la ligne de départ dans votre package.json par:

    "start": "tsc & simultanément \" tsc -w \ "\" lite-server \ ""

  • alternativement, la réponse de user60108 fonctionne également car il n'utilise pas l'esperluette:

    "start": "simultanément \" npm run tsc: w \ "\" npm run lite \ ""


1

Il est fort probable que votre version de NPM soit ancienne, j'ai récemment eu ceci sur une machine de développement au travail, tapez:

npm -v

S'il s'agit de quelque chose de moins que la version stable actuelle, et vous pouvez simplement mettre à jour votre installation Node.js à partir d'ici https://nodejs.org/en/ :)


1

Cela m'a fonctionné, mis /// <reference path="../node_modules/angular2/typings/browser.d.ts" /> en haut du fichier d'amorçage.

Par exemple:-

Dans boot.ts

/// <reference path="../node_modules/angular2/typings/browser.d.ts" />
import {bootstrap} from 'angular2/platform/browser'
import  {AppComponent} from './app.component'

bootstrap(AppComponent);

Remarque: - Assurez-vous d'avoir mentionné le chemin de référence correct .


1
  1. Dans devDependencies, le script type est 1.7.3 mais vous avez 1.7.5 correctif commun.
  2. Importez vos fichiers js dans le bon ordre dans index.html . pour plus d'informations, reportez-vous à ce référentiel https://github.com/pkozlowski-opensource/ng2-play/blob/master/index.html ou reportez-vous à mon référentiel ici

    https://github.com/MrPardeep/Angular2-DatePicker

index.html

<script src="node_modules/angular2/bundles/angular2-polyfills.js"></script>
    <script src="node_modules/es6-shim/es6-shim.min.js"></script>
    <script src="node_modules/systemjs/dist/system.src.js"></script>

    <script>
        System.config({
                    defaultJSExtensions: true,
                    map: {
                        rxjs: 'node_modules/rxjs'
                    },
                    packages: {
                        rxjs: {
                        defaultExtension: 'js'
                      }
                    }
                });
    </script>
    <script src="node_modules/angular2/bundles/angular2.dev.js"></script>
    <script src="node_modules/rxjs/bundles/Rx.js"></script>
    <script src="node_modules/angular2/bundles/router.dev.js"></script>
    <script src="node_modules/angular2/bundles/http.dev.js"></script>

<script>
    System.import('dist/bootstrap');
</script> 

Merci pour votre rediffusion mais cela ne résout pas mon problème :)
Tomasz Ciunel

que, comme @Eric l'a dit, vérifiez la version de votre nœud, il devrait entre 4 * 5 et la version npm devrait entre 2 * 3. ou affichez la structure de votre projet, cela m'aidera à découvrir le problème.
Pardeep Jain

Je vous remercie! Cela a fonctionné pour moi. Ce lien en particulier: github.com/pkozlowski-opensource/ng2-play/blob/master/…
brando

votre bienvenue :) ce lien est très utile pour le démarrage dans angular2 beta0.0.
Pardeep Jain

0

Je peux reproduire les étapes sans aucun problème.

S'il vous plaît essayez:

(1) supprimez cette ligne de votre index.html

<script src="node_modules/es6-shim/es6-shim.js"></script>

(2) modifier le fichier: app.components.ts , supprimer "," en fin de ligne dans le champ modèle

@Component({
    selector: 'my-app',
    template: '<h1>My First Angular 2 App</h1>'
})

Voici mon environnement:

$ node -v
v5.2.0

$ npm -v
3.3.12

$ tsc -v
message TS6029: Version 1.7.5

Veuillez consulter ce dépôt pour mon travail: https://github.com/AlanJui/ng2-quick-start


si nous utilisons ,à la fin du modèle, je n'ai produit aucun problème. et comment un projet peut-il fonctionner sanses6-shim
Pardeep Jain


0

L'installation globale des packages est une façon de le faire, mais cela vous limite à utiliser la même version dans tous les projets dans lesquels ils sont utilisés.

Au lieu de cela, vous pouvez préfixer vos scripts npm avec ./node_modules/.bin. Dans votre cas, package.jsoncela ressemblerait à ceci:

{
  "name": "reservationsystem",
  "version": "0.0.1",
  "scripts": {
    "tsc": "./node_modules/.bin/tsc",
    "tsc:w": "npm run tsc -w",
    "lite": "./node_modules/.bin/lite-server",
    "start": "./node_modules/.bin/concurrent \"npm run tsc:w\" \"npm run lite\" "
  },
  "dependencies": {
    "a2-in-memory-web-api": "~0.1.0",
    "angular2": "2.0.0-beta.3",
    "es6-promise": "^3.0.2",
    "es6-shim": "^0.33.3",
    "reflect-metadata": "0.1.2",
    "rxjs": "5.0.0-beta.0",
    "systemjs": "0.19.17",
    "zone.js": "0.5.11"
  },
  "devDependencies": {
    "concurrently": "^1.0.0",
    "lite-server": "^2.0.1",
    "typescript": "^1.7.5"
  }
}

Je pense que npm est censé fournir le ./node_modules/.bindevant chaque commande "script" qui se trouve dans ce répertoire par défaut, c'est pourquoi l'original package.jsonressemblait à ce qu'il était. Je ne sais pas si cette fonctionnalité est présente dans chaque version de npm, ou s'il existe un paramètre de configuration que vous êtes censé spécifier. Ça vaudrait la peine de regarder!


0

J'ai eu le même problème, nous avons tous les deux oublié d'inclure les 's' sur les composants ici:

import  {AppComponent} from './app.component'

Devrait être:

boot.js:

import {bootstrap} from 'angular2/platform/browser'
import  {AppComponent} from './app.components'

bootstrap(AppComponent);

ce n'est pas vrai, en suivant l'exemple, il ne devrait y avoir aucun "s" sur app.component
Brad Woods

0

J'ai eu la même erreur sur OS X (node ​​v6.2.0 et npm v3.9.3 installés avec homebrew) et cela n'a été résolu par aucun des éléments ci-dessus. J'ai dû ajouter des chemins complets aux commandes exécutées simultanément.

Dans package.json, j'ai changé ceci:

"start": "tsc && concurrently \"npm run tsc:w\" \"npm run lite\" ",

pour ça:

"start": "tsc && concurrently \"/Users/kyen/.node/bin/npm run tsc:w\" \"/Users/kyen/.node/bin/npm run lite\" ",

Vous devrez bien sûr mettre à jour les chemins corrects en fonction de l'emplacement de stockage des binaires globaux de votre nœud. Notez que je n'ai pas besoin d'ajouter le chemin à la première commande tsc. Il semble qu'il n'a besoin que simultanément des chemins complets spécifiés.


0

J'ai rencontré la même erreur. Et après de nombreuses recherches, j'ai finalement trouvé celui-ci: Installation et exécution de l'application Angular2 via package.json . Puis j'ai essayé de remplacer

"scripts": { "start": "tsc && concurrently \"npm run tsc:w\" \"npm run lite\" ", "lite": "lite-server", "postinstall": "typings install", "tsc": "tsc", "tsc:w": "tsc -w", "typings": "typings" }, à

"scripts": { "start": "concurrently \"npm run tsc:w\" \"npm run lite\" ", "lite": "lite-server", "postinstall": "typings install", "tsc": "tsc", "tsc:w": "tsc -w", "typings": "typings" },

J'espère que cela aide qui obtient la même erreur.

PS: Mon erreur n'est pas la même que Tomasz, qui est ma version npm est 3.7.3 et la version nœud est 5.9.1.


0

Désinstallez tous les packages de nœuds existants. Mettez à jour le nœud et npm.Comme il est indiqué dans la documentation comme au moins le nœud v5.xx et npm 3.xx, cela provoquera des erreurs.

Faites npm clean. Ensuite , faites npm install, npm start.

Cela a résolu le problème pour moi.


ce n'est pas vrai, la documentation stats au moins node v4.xx angular.io/docs/ts/latest
Brad Woods

0

Pour les utilisateurs d'Ubuntu 16.x, l'installation de la dernière version 5.x résout mon problème dans Ubuntu

curl -sL https://deb.nodesource.com/setup_5.x | sudo -E bash -
sudo apt-get install -y nodejs

0

Apparemment, il y a plusieurs façons dont angular2-quickstart peut ne pas démarrer. J'ai eu le même problème en exécutant Angular2 version 2.0.0 sous une nouvelle installation du nœud 6.6.0 / npm 3.10.3 sur Windows 7. Dans mon cas, exécuter npm startune tonne d'erreurs typographiques:

c:\git\angular2-quickstart>npm start

> angular2-quickstart@1.0.0 start c:\git\angular2-quickstart
> tsc && concurrently "npm run tsc:w" "npm run lite"

node_modules/@angular/common/src/directives/ng_class.d.ts(46,34): error TS2304: Cannot find name 'Set'.
node_modules/@angular/common/src/pipes/async_pipe.d.ts(39,38): error TS2304: Cannot find name 'Promise'.
(...)

Ce problème est abordé dans le numéro 63 de démarrage rapide angulaire, les «typages» n'étant pas installés correctement . Ce ticket donne le correctif comme

$ ./node_modules/.bin/typings install

qui a fonctionné pour moi. (Je ne suis pas encore sûr de la "bonne" façon de procéder.)


0

Veuillez vous assurer que les noms sont corrects, changeant ainsi componentdans boot.js en components. entrez la description de l'image ici



0

Dans le fichier package.json, j'ai supprimé la ligne qui avait "prestart": "npm run build". Cela semble être une commande bloquante et se produit avant le démarrage de (npm), empêchant ainsi les autres commandes de démarrage.


0

Remplacez start dans angular.json par "start": "ng serve --host 0.0.0.0"ou "start": "lite-server"et run. Vérifiez également si vous avez correctement installé angular / cli.


0

Dans le didacticiel de démarrage rapide, j'ai parcouru les étapes jusqu'à npm start. Ensuite, j'ai eu cette erreur. Ensuite, j'ai supprimé le node_modulesdossier sous angular-quickstartet j'ai npm installrecommencé. Maintenant ça marche.


0

Si vous utilisez un proxy, cela peut provoquer cette erreur:

  1. npm config set proxy http://username:pass@proxy:port

  2. npm config set https-proxy http://username:pass@proxy:port

  3. créez un fichier nommé .typingsrcdans votre dossier d'application qui comprend:

    • proxy = (valeur à l'étape 1)
    • https-proxy = (valeur à l'étape 1)
  4. courir npm cache clean

  5. courir npm install
  6. courir npm typings install
  7. courir npm start

ça fonctionnera alors


Non, je reçois toujours: erreur TS5023: option de compilation inconnue 'moduleResolution'.
Christof Kälin
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.