J'ai cloné graine angulaire qui utilise le noeud http-server
et il fonctionne parfaitement avec la configuration suivante.
Commande: npm start (à partir de la racine du projet)
Configuration suivante dans package.json
fichier:
"start": "http-server -a localhost -p 8000 -c-1",
Link to file
Cependant, je ne parviens pas à démarrer ce serveur directement. Exemple: depuis la racine du projet, aucune de ces commandes ne fonctionne:
> angular-seed npm http-server
> angular-seed node http-server
> angular-seed http-server
Est-ce que ceci (serveur http) ne devrait pas être disponible ici (racine, où il a été installé)? Quelqu'un pourrait-il m'expliquer comment cela fonctionne et comment je peux l'utiliser directement à la racine du projet.
Je suis sûr que cela fonctionnera bien si je l'installe globalement, mais cela ne m'intéresse pas.
Lorsque vous exécutez npm install
À la racine du projet, toutes les dépendances npm sont installées dans le répertoire node_modules
Du projet.
Si vous examinez le répertoire node_modules
Du projet, vous devriez voir un répertoire appelé http-server
, Qui contient le paquet http-server
, Et un dossier .bin
, qui contient les fichiers binaires exécutables des dépendances installées. Le répertoire .bin
Devrait avoir le binaire http-server
(Ou un lien vers celui-ci).
Donc, dans votre cas, vous devriez pouvoir démarrer le http-server
En lançant ce qui suit à partir du répertoire racine de votre projet (au lieu de npm start
):
./node_modules/.bin/http-server -a localhost -p 8000 -c-1
Cela devrait avoir le même effet que d’exécuter npm start
.
Si vous utilisez un shell Bash, vous pouvez simplifier cela en ajoutant le dossier ./node_modules/.bin
À votre variable d'environnement $PATH
:
export PATH=./node_modules/.bin:$PATH
Cela mettra ce dossier sur votre chemin, et vous devriez pouvoir exécuter simplement
http-server -a localhost -p 8000 -c-1
Pour démarrer le serveur localement, collez le code ci-dessous dans package.json et exécutez npm start dans la commande ligne.
"scripts": { "start": "http-server -c-1 -p 8081" },