ng serve
sert Angulaire du projet via un serveur de développement
npm start
exécute une commande arbitraire spécifié dans le package "démarrer" propriété de ses "scripts" de l'objet. Si aucun "démarrer" de la propriété est spécifiée sur les "scripts" de l'objet, il sera exécuté nœud server.js.Il semble que l'
ng serve
démarre le serveur embarqué alors qu'npm start
commence le Nœud serveurs.Quelqu'un peut jeter un peu de lumière sur elle?
Réponses
Trop de publicités?Pour un projet à l'aide de la CLI, vous utilisez habituellement ng servir. Dans d'autres cas, vous souhaiterez peut-être utiliser npm commencer. Voici l'explication détaillée:
ng servir
Servira un projet qui est Angulaire de la CLI de conscience", à savoir un projet qui a été créé à l'aide de l'angle de la CLI, en particulier à l'aide de:
ng new app-name
Donc, si vous avez échafaudée un projet à l'aide de la CLI, vous voudrez probablement utiliser ng servir
npm commencer
Cela peut être utilisé dans le cas d'un projet qui n'est pas Angulaire de la CLI de conscience (ou il peut simplement être utilisé pour exécuter 'ng servir pour un projet Angulaire de la CLI au courant)
Comme les autres réponses de l'état, c'est un mécanisme national de prévention de la commande exécuter la commande npm(s) de l'emballage.json qui ont l'identificateur "démarrer", et il ne peut pas exécuter 'ng servir". Il est possible d'avoir quelque chose comme ce qui suit dans le package.json:
"scripts": {
"build:watch": "tsc -p src/ -w",
"serve": "lite-server -c=bs-config.json",
"start": "concurrently \"npm run build:watch\" \"npm run serve\""
...
},
"devDependencies": {
"concurrently": "^3.2.0",
"lite-server": "^2.2.2",
Dans ce cas, 'npm démarrer', voici les commandes à exécuter:
concurrently "npm run build:watch" "npm run serve"
Cela permettra d'exécuter simultanément le Tapuscrit compilateur (en faisant attention aux changements de code), et exécutez le Nœud lite-serveur (les utilisateurs qui BrowserSync)
À partir du document
Cela va à l'arbitraire de commande spécifié dans le package "démarrer" de la propriété de ses "scripts" de l'objet. Si aucun "démarrer" de la propriété est spécifiée sur les "scripts" de l'objet, il sera exécuté nœud server.js.
ce qui signifie qu'il va appeler les scripts de démarrage à l'intérieur de l'emballage.json
"scripts": {
"start": "tsc && concurrently \"npm run tsc:w\" \"npm run lite --baseDir ./app --port 8001\" ",
"lite": "lite-server",
...
}
Fournis par angulaire angulaire de la cli pour commencer angular2 applications créées par angulaires-cli. lorsque vous installez angulaire de la cli, il va créer ng.cmd sous C:\Users\name\AppData\Roaming\npm
(pour windows) et de l'exécuter "%~dp0\node.exe" "%~dp0\node_modules\angular-cli\bin\ng" %*
Donc à l'aide d' npm start
vous pouvez faire votre propre exécution où est - ng serve
est uniquement pour angulaires-cli
Voir Aussi : Qu'advient-il lorsque vous exécutez ng servir?