Angular2 QuickStart npm start non funziona correttamente


105

Struttura dei file

So che Angular2 beta è appena stato rilasciato ma non riesco a riprodurre i passaggi del tutorial del sito ufficiale ( https://angular.io/guide/quickstart ). Forse qualcuno ha avuto problemi simili e sa cosa fare per risolvere il problema? Quando provo ad avviare l'applicazione con il npm startcomando ottengo un output come questo:

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 ]

Avevo: versione dattiloscritto 1.7.5 versione nodo 0.12.2

Forse qualcuno potrebbe aiutare a risolvere il problema :)?

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

Potresti modificare il tuo post con i tuoi file per favore?
Romain

Qual è la tua struttura di cartelle? index.html è dentro app/o fuori di esso?
the_critic

In primo luogo, il file boot.js devono essere un file typescript rinominarlo come boot.ts . Non vedo nient'altro che sembra sbagliato ... Come ha detto the_critic, potresti fornirci la struttura del tuo progetto.
Romain

È boot.ts. Ho digitato per errore "js" qui su stackoverflow - scusa. L'indice html è nella radice come package.json per esempio. Non è in app / directory.
Tomasz Ciunel

2
Assicurati che la tua versione del nodo sia >=4.2.1 <5e la tua versione npm sia >=2.14.7 <3.0quella specificata nella guida DEVELOPER . Penso che tu possa farlo funzionare con il nodo 5, ma non sono a conoscenza di come.
Eric Martinez

Risposte:


224

Modificare il startcampo in package.json da

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

per

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

2
Perché ha eseguito tsc due volte ( tsce tsc -w)?
smartmouse

9
Ha funzionato! Ma perché? Ha iniziato a scoraggiarsi in ng2.
Maxim

9
Nel corso "play by play angular 2 quick start" su Pluralsight Ward Bell spiega questo. "tsc" compila prima il codice perché senza quello, in un progetto più grande, è possibile che il server si avvii prima che la compilazione sia terminata. In tal caso il server genererebbe un errore indicando che non sa cosa fare.
Starceaker,

1
Nel 2017, la tua soluzione alternativa nella tua risposta ha rivelato il vero problema, ovvero che c'erano errori di compilazione nel dattiloscritto nel codice dell'app. Quando ho corretto gli errori di compilazione, la versione originale ha funzionato bene senza la tua soluzione alternativa.
CodeMed

1
Eccellente ... "start": "simultaneamente \" npm run tsc: w \ "\" npm run lite \ "" ha funzionato per me ...
DILIP KOSURI

86

Per poter npm startcorrere per me, dovevo assicurarmi di aver installato globalmente alcune delle devDependencies. Hai provato:

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

ma penso che lite-serversia facoltativo puoi usare anche altri servizi
Pardeep Jain

11
Ha funzionato per me. sudo npm update -g && sudo npm install -g concurrently lite-server typescript.
Sam Finnigan

6
non dimenticare di disinstallare la versione locale:npm uninstall lite-server
Aurelien

1
Ho avuto lo stesso problema nell'avvio del server web utilizzando angular2-seed dal corso Udemy. Questo ha risolto il mio problema.
dance2die,

Sì! l'installazione del lite-server a livello globale e la disinstallazione del pacchetto locale hanno finalmente funzionato per me su Vagrant! Grazie mille!
Yahya Uddin

48

Per prima cosa devi aggiornare npm, lite-server e typescript:

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

Elimina la cartella node_modules dalla directory del tuo progetto Angular (se esistente). Prossima esecuzione:

npm install

Dopo di che risolvi gli errori ENOSPC:

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

Finalmente:

npm start

Questo è il mio file 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
Ho votato positivamente perché questo ha risolto il mio problema. Tuttavia mi piacerebbe capire come l'aggiunta di fs.inotify.max_user_watches a / etc / sysctl abbia risolto il problema.
Joshua Wilson

Sembra che l'osservatore abbia bisogno di più memoria e questo lo fornisce.
Joshua Wilson il

Ho scoperto che sembrava funzionare meglio quando ho eliminato i moduli prima - rm -r node_modules/. Comunque, come dice l'uomo, mi ha fatto andare avanti; Sono colpito dal fatto che fs.inotify.max_user_watches=524288mi sembra eccessivo però. C'è una migliore sanità mentale nel vento?
sarà il

Vale la pena aggiungere che l' avvio rapido di Javascript si attiva immediatamente. NESSUN extra enorme. E quando il server interrompe la pagina web stays on screen. La versione dattiloscritta svanisce con uno sbuffo di fumo
sarà il

questo mi ha salvato, grazie. echo fs.inotify.max_user_watches = 524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p
chintan adatiya

15

Ho avuto lo stesso errore su Windows 10. Sembra che sia un problema con il pacchetto npm contemporaneamente. Ho trovato 2 opzioni su come risolvere questo errore:

  • 1. Esegui entrambi i comandi in 2 cmd separati:

    • nella prima esecuzione: npm run tsc:w
    • nella seconda: npm run lite
  • 2. Cambia package.json

    • basta cambiare l'opzione di avvio in questo: "start": "tsc && npm run tsc:w | npm run lite",

2
Solo per notare. Su Linux:"start": "tsc && npm run tsc:w & npm run lite",
ACV

Bene, per me si ricompila automaticamente.
dontHaveName

Mi riferivo al mio primo commento :) su Linux non funzionerà
ACV

Solo questa soluzione ha funzionato per me. Prima ho provato (esegui entrambi i comandi in 2 cmd separati). Quindi interrotto il processo in entrambi i cmd. Infine applica second (cambia package.json) ed esegui "npm start" in un solo cmd. Se cambio un file, localhost: 3000 si aggiorna automaticamente e mostra le mie modifiche. Molte grazie!
Andrew F.

13

Ecco come ho risolto il problema oggi dopo ore passate a provare tutte queste diverse soluzioni - (per chiunque cerchi ancora un altro modo).

Apri 2 istanze di cmd nella tua directory di avvio rapido:

finestra n. 1:

npm run build:watch

poi...

finestra n. 2:

npm run serve

Si aprirà quindi nel browser e funzionerà come previsto


9

Ho avuto un problema simile dopo aver copiato la cartella angular2-quickstart (inclusi node_modules) per creare la cartella angular2-tour-of-heroes. Questo era strano perché l'originale si stava compilando bene ma la copia non era ...

npm run tsc

Sono stato in grado di risolvere il problema eliminando la cartella node_modules e rieseguendo l'installazione di npm .

Questa è stata una sorpresa per me, quindi ho fatto una differenza tra le 2 cartelle ...

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

c'erano MOLTE differenze, molte differenze "dove" nei file package.json come questo: -

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"

... il che ha senso ma ce n'erano anche alcuni come questo: -

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)

... che non capisco affatto.

Oh beh, spero che questo aiuti.


5

Modifica il campo iniziale in package.json da:

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

Per:

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

Ha davvero aiutato.


5

Questa risposta è in relazione all'eccellente corso Pluralsight "Angular 2 Fundamentals" di Jim Cooper.

Se come me hai problemi ad iniziare a eseguire il comando npm start su una macchina Windows 10, ti suggerisco quanto segue:

Avvia git bash come amministratore (segui i passaggi nel video) Vai alla directory del progetto ( ng2-fundamentals ) e poi digita i seguenti comandi:

npm config get registry

npm cache clean

npm install

Una volta completata l'installazione, sarà necessario modificare il file get-shell.js situato nel modulo spawn-default-shell all'interno della cartella node_modules come segue:

Modificare quanto segue:

const DETECT_SH_REGEX = /sh$/;

a questa:

const DETECT_SH_REGEX = /sh/;

Nota il $ rimosso dalla fine della stringa sh (credito all'autore originale di questa correzione alfian777 che ha pubblicato la soluzione su GitHub )

Salva il file e poi vai alla tua console git bash e digita npm start

Non dovresti vedere alcun errore ora e la pagina localhost si avvierà nel tuo browser predefinito (in alternativa apri il tuo browser e vai su http: // localhost: 8808 / ).


3

Nessuna di queste risposte ha aiutato con Ubuntu . Alla fine mi sono imbattuto in una soluzione di John Papa (l'autore di lite-server).

Su Ubuntu 15.10 il Quick Start di Angular 2 ha preso vita dopo aver eseguito questo al terminale:

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

Apparentemente aumenta il numero di File Watch disponibili.

Fonte della risposta: https://github.com/johnpapa/lite-server/issues/9


3

Ho riscontrato lo stesso problema. Tuttavia, nessuna delle risposte precedenti era una soluzione adeguata per me. Si scopre che era dovuto più al mio ambiente di sviluppo che a qualsiasi versione delle cose.

Da quando ho usato Visual Studio Code, ho impostato un'attività di compilazione in VSC per compilare TypeScript come watcher. Questo era il problema. VSC aveva già avviato un'attività NPM per TSC e quindi durante l'esecuzione dello script di "avvio" del tutorial, aveva problemi con il fatto che VSC era ancora in esecuzione tsc -w.

Ho interrotto l'attività in VSC e ho rieseguito lo script di "avvio" e ha funzionato perfettamente.

Soluzione A: Stop e npm Start

  • Comando VSC> Attività: termina le attività in esecuzione
  • Terminal $ npm start

Dopodiché, per far funzionare tutto insieme, cambio lo script di avvio per avviare il server e non avviare effettivamente TSC.

Soluzione B: modificare lo script di avvio di npm

  • Sostituire

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

  • con

    "start": "npm run lite"

Soluzione C: esegui semplicemente il comando server lite

`npm run lite`

3

Ho risolto il mio problema con il programma Quick Start seguendo il link sottostante.

Errore del server live di Angular 2 QuickStart

Modifica le Package.jsonimpostazioni degli script

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

per:

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

2

Questa risposta è solo per gli utenti di Windows 10 e, come vedrai di seguito, sospetto che il problema si stia verificando solo per quegli utenti:

Per scoprire cosa sta succedendo, puoi eseguire il comando su PowerShell e ti dirà qual è il problema reale:

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

Fondamentalmente, il messaggio spiega che il token "&&" non è ancora valido con Windows 10. E per chi si chiede, lo stesso comando che sostituisce && con &, ci informa che l'operatore e commerciale è riservato per usi futuri:

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

Conclusioni :

  • se vuoi lanciare manualmente questo comando da PowerShell, puoi invece usarlo:

    tsc "e" contemporaneamente "tsc -w" "lite-server"

  • se vuoi avviare la tua applicazione con npm start, sostituisci la linea di inizio nel tuo package.json con:

    "start": "tsc e contemporaneamente \" tsc -w \ "\" lite-server \ ""

  • in alternativa, la risposta di user60108 funziona anche perché non utilizza la e commerciale:

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


1

È molto probabile che la tua versione di NPM sia vecchia, di recente l'ho avuto su una macchina per sviluppatori al lavoro, digita:

npm -v

Se è qualcosa di meno dell'attuale versione stabile e puoi semplicemente aggiornare l'installazione di Node.js da qui https://nodejs.org/en/ :)


1

Questo mi ha funzionato, messo /// <reference path="../node_modules/angular2/typings/browser.d.ts" />all'inizio del file di bootstrap.

Per esempio:-

In boot.ts

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

bootstrap(AppComponent);

Nota: - Assicurati di aver menzionato il percorso di riferimento corretto .


1
  1. In devDependencies il dattiloscritto è 1.7.3 ma hai 1.7.5 fisso uno comune.
  2. Importa i tuoi file js nell'ordine corretto in index.html. per maggiori informazioni fare riferimento a questo repository https://github.com/pkozlowski-opensource/ng2-play/blob/master/index.html o fare riferimento al mio repository qui

    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> 

Grazie per il tuo replay ma non risolve il mio problema :)
Tomasz Ciunel

rispetto a quanto ha detto @Eric, controlla la versione del tuo nodo dovrebbe essere compresa tra 4 * 5 e la versione npm dovrebbe essere compresa tra 2 * 3. o pubblica la struttura del tuo progetto mi aiuterà a scoprire il problema.
Pardeep Jain

Grazie! Questo ha funzionato per me. Questo link in particolare: github.com/pkozlowski-opensource/ng2-play/blob/master/…
brando

benvenuto :) questo link è molto utile per l'avvio in angular2 beta0.0.
Pardeep Jain

0

Posso riprodurre i passaggi senza alcun problema.

Vi preghiamo di provare:

(1) rimuovi questa riga dal tuo index.html

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

(2) modifica il file: app.components.ts , elimina "," alla fine della riga nel campo del modello

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

Ecco il mio ambiente:

$ node -v
v5.2.0

$ npm -v
3.3.12

$ tsc -v
message TS6029: Version 1.7.5

Si prega di fare riferimento a questo repository per il mio lavoro: https://github.com/AlanJui/ng2-quick-start


se usiamo ,alla fine del template non ho prodotto alcun problema. e come può funzionare il progetto senzaes6-shim
Pardeep Jain


0

L'installazione dei pacchetti a livello globale è un modo per farlo, ma ciò limita l'utilizzo della stessa versione in tutti i progetti in cui vengono utilizzati.

Invece, puoi anteporre agli script npm ./node_modules/.bin. Nel tuo caso, package.jsonsarebbe simile a questo:

{
  "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"
  }
}

Penso che npm dovrebbe fornire il ./node_modules/.bindavanti a ogni comando "script" che si trova in quella directory per impostazione predefinita, motivo per cui l'originale package.jsonaveva l'aspetto che aveva. Non sono sicuro che questa funzionalità sia presente in ogni versione di npm o se ci siano delle impostazioni di configurazione che dovresti specificare. Vale la pena esaminarlo!


0

Ho avuto lo stesso problema, entrambi abbiamo dimenticato di includere la 's' sui componenti qui:

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

Dovrebbe essere:

boot.js:

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

bootstrap(AppComponent);

questo non è vero, seguendo l'esempio, non dovrebbero esserci "s" su app.component
Brad Woods

0

Ho avuto lo stesso errore su OS X (nodo v6.2.0 e npm v3.9.3 installati con homebrew) e non è stato risolto da nessuno dei precedenti. Ho dovuto aggiungere percorsi completi ai comandi eseguiti contemporaneamente.

In package.json, ho cambiato questo:

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

a questa:

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

Ovviamente dovrai aggiornare i percorsi corretti in base alla posizione in cui sono archiviati i file binari globali del nodo. Nota che non avevo bisogno di aggiungere il percorso al primo comando tsc. Sembra che solo contemporaneamente siano necessari i percorsi completi specificati.


0

Ho incontrato lo stesso errore. E dopo molte ricerche, ho finalmente trovato questo: Applicazione Angular2 installata ed eseguita tramite package.json . Poi ho provato a sostituire

"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" }, per

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

Spero che aiuti chi ottiene lo stesso errore.

PS: Il mio errore non è lo stesso di Tomasz, che è la mia versione npm è 3.7.3 e la versione del nodo è 5.9.1.


0

Disinstallare tutti i pacchetti di nodi esistenti. Aggiorna nodo e npm. Poiché nella documentazione è indicato almeno come nodo v5.xx e npm 3.xx, altrimenti causerà errori.

Fare npm clean. Poi fare npm install, npm start.

Questo ha risolto il problema per me.


questo non è vero, la documentazione riporta almeno il nodo v4.xx angular.io/docs/ts/latest/…
Brad Woods

0

Per gli utenti di Ubuntu 16.x, l'installazione dell'ultima versione 5.x risolve il mio problema in Ubuntu

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

0

Apparentemente c'è più di un modo in cui angular2-quickstart può non avviarsi. Ho avuto lo stesso problema eseguendo Angular2 versione 2.0.0 con una nuova installazione del nodo 6.6.0 / npm 3.10.3 su Windows 7. Nel mio caso l'esecuzione di npm startun sacco di errori di battitura:

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

Questo problema è discusso nel numero 63 di avvio rapido angolare, "digitazioni" non installate correttamente . Quel biglietto dà la correzione come

$ ./node_modules/.bin/typings install

che ha funzionato per me. (Non sono ancora sicuro del modo "giusto" per farlo.)


0

Assicurati che i nomi siano corretti, cambiando così componentin boot.js in components. inserisci qui la descrizione dell'immagine



0

Nel file package.json, ho rimosso la riga che aveva "prestart": "npm run build". Questo sembra essere un comando di blocco e si verifica prima dell'avvio di (npm), impedendo così gli altri comandi di avvio.


0

Cambia start in angular.json in "start": "ng serve --host 0.0.0.0"o "start": "lite-server"ed esegui. Controlla anche se hai installato angular / cli correttamente o meno.


0

Nel tutorial di avvio rapido ho seguito i passaggi fino a npm start. Poi ho ricevuto questo errore. Quindi ho cancellato la node_modulescartella sotto angular-quickstarte sono corsa di npm installnuovo. Ora funziona.


0

Se usi il proxy, potresti causare questo errore:

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

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

  3. creare un file denominato .typingsrcnella cartella dell'applicazione che include:

    • proxy = (valore nel passaggio 1)
    • https-proxy = (valore nel passaggio 1)
  4. correre npm cache clean

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

allora funzionerà


No, ancora ottenendo: errore TS5023: opzione del compilatore sconosciuta 'moduleResolution'.
Christof Kälin
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.