instalar cli node.js angular npm

node.js - instalar - npm angular cli



Angular2 QuickStart npm start no funciona correctamente (30)

Sé que Angular2 beta acaba de ser lanzado, pero no puedo reproducir los pasos de su tutorial oficial del sitio ( https://angular.io/guide/quickstart ). ¿Quizás alguien ha tenido problemas similares y sabe qué hacer para solucionar esto? Cuando intento iniciar la aplicación con el comando npm start obtengo un resultado como este:

0 info it worked if it ends with ok 1 verbose cli [ ''node'', ''/usr/local/bin/npm'', ''start'' ] 2 info using [email protected] 3 info using [email protected] 4 verbose run-script [ ''prestart'', ''start'', ''poststart'' ] 5 info prestart [email protected] 6 info start [email protected] 7 verbose unsafe-perm in lifecycle true 8 info [email protected] Failed to exec start script 9 verbose stack Error: [email protected] 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 [email protected] 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 [email protected] start: `concurrent "npm run tsc:w" "npm run lite" ` 17 error Exit status 127 18 error Failed at the [email protected] 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 ]

Tenía: versión mecanografiada 1.7.5 versión del nodo 0.12.2

Tal vez alguien podría ayudar a resolver el 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);



Aparentemente, hay más de una forma en que angular2-quickstart puede fallar al iniciar. Tuve el mismo problema al ejecutar Angular2 versión 2.0.0 bajo una nueva instalación del nodo 6.6.0 / npm 3.10.3 en Windows 7. En mi caso, ejecutar npm start arrojó una tonelada de errores de mecanografía:

c:/git/angular2-quickstart>npm start > [email protected] 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''. (...)

Este problema se trata en el problema de inicio rápido angular # 63, "tipings" no se instala correctamente . Ese boleto da la solución como

$ ./node_modules/.bin/typings install

que funciono para mi (Todavía no estoy seguro de la forma "correcta" de hacerlo).


Así es como resolví el problema hoy después de horas de probar todas estas soluciones diferentes (para cualquiera que todavía busque otra forma).

Abra 2 instancias de cmd en su directorio de inicio rápido:

ventana # 1:

npm run build:watch

entonces...

ventana # 2:

npm run serve

Luego se abrirá en el navegador y funcionará como se esperaba


Asegúrese de que los nombres sean correctos, cambiando así el component en boot.js a components .


Cambie el campo de start en package.json de

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

a

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


Cambie el campo de inicio en package.json de:

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

A:

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

Realmente ayudó.


Cambie start en angular.json a "start": "ng serve --host 0.0.0.0" o "start": "lite-server" y ejecute. También verifique si ha instalado angular / cli correctamente o no.


Desinstale todos los paquetes de nodos existentes. Actualizar nodo y npm. Como se proporciona en la documentación como al menos nodo v5.xx y npm 3.xx, de lo contrario, provocará errores.

Hacer npm clean . Luego haga npm install , npm start .

Esto resolvió el problema para mí.


En el archivo package.json, "prestart": "npm run build" la línea que tenía "prestart": "npm run build" . Esto parece ser un comando de bloqueo y ocurre antes del inicio (npm), evitando así los otros comandos de inicio.


En el tutorial de inicio rápido, seguí los pasos hasta el npm start . Entonces recibí este error. Luego node_modules carpeta node_modules en angular-quickstart y ejecuté npm install nuevamente. Ahora funciona.


Encontré este mismo problema. Sin embargo, ninguna de las respuestas anteriores fue una solución adecuada para mí. Resulta que se debió más a mi entorno de desarrollo que a cualquiera de las versiones de las cosas.

Como utilicé Visual Studio Code, configuré una tarea de compilación en VSC para compilar TypeScript como un observador. Este fue el problema. VSC ya había comenzado una tarea de NPM para TSC y, por lo tanto, al ejecutar el script de "inicio" del tutorial, tenía problemas con el hecho de que VSC todavía ejecutaba tsc -w .

Detuve la tarea en VSC y volví a ejecutar el script ''inicio'' y funcionó bien.

Solución A: detener y comenzar npm

  • Comando VSC> Tareas: finalizar tareas en ejecución
  • Terminal $ npm start

Después de eso, para que todo funcione en conjunto, cambio el script de inicio para iniciar el servidor y no iniciar TSC.

Solución B: Cambiar el script de inicio de npm

  • Reemplazar

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

  • con

    "start": "npm run lite"

Solución C: simplemente ejecute el comando lite server

`npm run lite`


Es muy probable que su versión de NPM sea antigua, recientemente tuve esto en una máquina de desarrollador en el trabajo, escriba:

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

Si es algo menos que la versión estable actual, y puede actualizar su instalación de Node.js desde aquí https://nodejs.org/en/ :)


Esta respuesta es solo para usuarios de Windows 10 y, como verá a continuación, sospecho que el problema solo está ocurriendo para esos usuarios:

Para averiguar qué está sucediendo, puede ejecutar el comando en PowerShell y le indicará cuál es el problema real:

npm -v

Básicamente, el mensaje explica que el token "&&" aún no es válido con Windows 10. Y para aquellos que se preguntan, el mismo comando que reemplaza && con &, nos informó que el operador de ampersand está reservado para uso futuro:

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

Conclusiones :

  • si desea iniciar manualmente este comando desde el PowerShell, puede usar esto en su lugar:

    tsc "y" simultáneamente "tsc -w" "lite-server"

  • si desea iniciar su aplicación con npm start, reemplace la línea de inicio en su package.json por:

    "start": "tsc & concurrentemente /" tsc -w / "/" lite-server / ""

  • alternativamente, la respuesta del usuario 60108 también funciona porque no está usando el signo de unión:

    "start": "concurrentemente /" npm run tsc: w / "/" npm run lite / ""


Esta respuesta está relacionada con el excelente curso de Pluralsight "Angular 2 Fundamentals" de Jim Cooper.

Si, como yo, tiene problemas para comenzar a ejecutar el comando npm start en una máquina con Windows 10, le sugiero lo siguiente:

Inicie git bash como administrador (siga los pasos en el video) Vaya al directorio del proyecto ( ng2-fundamentals ) y luego escriba los siguientes comandos:

npm config get registry npm cache clean npm install

Una vez que se complete la instalación, deberá modificar el archivo get-shell.js ubicado en el módulo spawn-default-shell dentro de la carpeta node_modules de la siguiente manera:

Cambia lo siguiente:

const DETECT_SH_REGEX = /sh$/;

a esto:

const DETECT_SH_REGEX = /sh/;

Tenga en cuenta los $ eliminados del final de la cadena sh (crédito al autor original de esta corrección alfian777 que publicó la solución en github )

Guarde el archivo y luego vaya a su consola git bash y escriba npm start

No debería ver ningún error ahora y la página localhost se iniciará en su navegador predeterminado (alternativamente, abra su navegador y navegue a http://localhost:8808/ ).


Esto me funcionó, puse /// <reference path="../node_modules/angular2/typings/browser.d.ts" /> en la parte superior del archivo de arranque.

Por ejemplo:-

En boot.ts

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

Nota: - Asegúrese de mencionar la ruta de referencia correcta.


Instalar los paquetes globalmente es una forma de hacerlo, pero esto lo restringe a usar la misma versión en todos los proyectos en los que se usan.

En su lugar, puede prefijar sus scripts ./node_modules/.bin con ./node_modules/.bin . En su caso, el package.json se vería así:

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

Creo que se supone que npm debe proporcionar el ./node_modules/.bin delante de cada comando "script" que está en ese directorio de forma predeterminada, por lo que el package.json original se veía como lo hacía. No estoy seguro de si esa característica está en cada versión de npm, o si hay alguna configuración que se supone que debe especificar. ¡Valdría la pena mirarlo!


Me encontré con el mismo error. Y después de mucha búsqueda, finalmente encontré esta: la aplicación Angular2 se instala y ejecuta a través de package.json . Entonces traté de reemplazar

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

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

Espero que ayude a quienes obtienen el mismo error.

PD: Mi error no es el mismo que Tomasz, que es mi versión npm es 3.7.3 y la versión de nodo es 5.9.1.


Ninguna de estas respuestas ayudó con Ubuntu . Finalmente encontré una solución de John Papa (autor del servidor lite).

En Ubuntu 15.10, el Inicio rápido de Angular 2 cobró vida después de ejecutar esto en la terminal:

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

Aparentemente aumenta el número de File Watches disponibles.

Fuente de respuesta: https://github.com/johnpapa/lite-server/issues/9


Para los usuarios de Ubuntu 16.x, la instalación de la última versión 5.x resuelve mi problema en ubuntu

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


Para que npm start ejecutarse para mí, tuve que asegurarme de haber instalado globalmente algunas de las dependencias de desarrollo. Has probado:

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

Primero necesita actualizar npm, lite-server y typecript:

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

Elimine la carpeta node_modules de su directorio de proyecto Angular (si existe). Próxima ejecución:

npm install

Después de eso, resuelva los errores de ENOSPC:

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

Finalmente:

npm start

Este es mi archivo 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" } }



Puedo reproducir pasos sin ningún problema.

Por favor, inténtalo:

(1) elimine esta línea de su index.html

$ node -v v5.2.0 $ npm -v 3.3.12 $ tsc -v message TS6029: Version 1.7.5

(2) modifique el archivo: app.components.ts , elimine "," al final de la línea en el campo de plantilla

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

Aquí está mi entorno:

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

Consulte este repositorio para mi trabajo: https://github.com/AlanJui/ng2-quick-start


Resolví mi problema con el programa de Inicio rápido siguiendo el siguiente enlace.

Error del servidor en vivo de inicio rápido de Angular 2

Cambiar la Package.json scripts Package.json

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

a:

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


Si usa proxy, puede causar este error:

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

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

  3. cree un archivo llamado .typingsrc en la carpeta de su aplicación que incluya:

    • proxy = (valor en el paso 1)
    • https-proxy = (valor en el paso 1)
  4. ejecutar npm cache clean

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

funcionará entonces


Tuve el mismo error en OS X (nodo v6.2.0 y npm v3.9.3 instalado con homebrew) y no fue resuelto por ninguno de los anteriores. Tuve que agregar rutas completas a los comandos que se ejecutan simultáneamente.

En package.json, cambié esto:

"compilerOptions": { "target": "es5", "module": "system", "moduleResolution": "node", "sourceMap": true, "emitDecoratorMetadata": true, "experimentalDecorators": true, "removeComments": false, "noImplicitAny": false

a esto:

"ambientDependencies": { "es6-shim": "github:DefinitelyTyped/DefinitelyTyped/es6-shim /es6-shim.d.ts#6697d6f7dadbf5773cb40ecda35a76027e0783b2" }

Por supuesto, deberá actualizar las rutas correctas en función de dónde se almacenan los binarios globales de su nodo. Tenga en cuenta que no necesitaba agregar la ruta al primer comando tsc. Parece que solo necesita simultáneamente las rutas completas especificadas.


Tuve el mismo error en Windows 10. Parece que es un problema con el paquete npm al mismo tiempo. Encontré 2 opciones para resolver este error:

  • 1. Ejecute ambos comandos en 2 cmds separados:

    • en la primera ejecución: npm run tsc:w
    • en el segundo: npm run lite
  • 2. Cambiar package.json

    • simplemente cambie la opción de inicio a esto: "start": "tsc && npm run tsc:w | npm run lite",

Tuve el mismo problema, ambos olvidamos incluir la ''s'' en los componentes aquí:

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

Debiera ser:

boot.js:

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


Tuve un problema similar después de copiar la carpeta angular2-quickstart (incluyendo node_modules) para crear la carpeta angular2-tour-of-heroes. Esto era extraño porque el original se estaba compilando bien pero la copia no ...

npm run tsc

Pude resolver el problema eliminando la carpeta node_modules y volviendo a ejecutar npm install .

Esto fue una sorpresa para mí, así que hice una diferencia entre las 2 carpetas ...

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

había MUCHAS diferencias, un montón de ''where'' difiere en los archivos package.json como este:

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"

... lo que tiene sentido, pero también hubo algunos como este: -

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)

... que no entiendo en absoluto.

Oh bueno, espero que esto ayude.