J'obtiens une erreur en essayant d'utiliser n'importe quel module global, Exemple:
Error: Cannot find module 'express'
at Function.Module._resolveFilename (module.js:338:15)
at Function.Module._load (module.js:280:25)
at Module.require (module.js:362:17)
at require (module.js:378:17)
at Object.<anonymous> (C:\BitNami\wappstack\...\test\app.js)
at Module._compile (module.js:449:26)
at Object.Module._extensions..js (module.js:467:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Module.runMain (module.js:492:10)
J'ai installé la commande express:
npm install -g express
Mon app.js:
var express = require('express');
Et exécutez-le en utilisant la commande windows powershell ou node.js Invite windows:
node app.js
ne sais pas vraiment ce qui ne va pas, je lis quelque chose sur les variables d'environnement dans Windows, est-ce possible?
Le problème était le suivant: les variables d'environnement Windows n'étaient pas configurées pour le dossier npm . Recherchez votre dossier npm et ajoutez le chemin dans les variables d'environnement.
Vous devez installer Express localement:
npm install express
Ensuite, exigez-le comme vous l'avez fait:
var express = require('express')
Juste pour citer ici:
https://www.npmjs.org/doc/files/npm-folders.html
J'obtenais la même erreur sur Windows7/x64 et l'ajout de la suite dans la variable d'environnement a résolu le problème
NODE_PATH=C:\Users\[USERNAME]\AppData\Roaming\npm\node_modules
* Remplacez [USERNAME] par votre nom d'utilisateur actuel
Je travaille sous Linux, mais lorsque j'ai besoin de l'express, je le fais avec un chemin relatif vers l'emplacement d'installation et tout fonctionne bien:
var express = require('./public/node_modules/express');
Je suis sûr que la même chose fonctionnerait avec un chemin Windows également. Si vous voulez être plus explicite et déclarer un chemin absolu, ce serait une option nucléaire pour vous assurer de toujours savoir exactement à quel endroit votre module est chargé, quel que soit le lieu d'exécution de vos scripts.
Si vous avez toujours un problème après avoir utilisé un chemin explicite, je ne sais pas ce que le problème pourrait être. . .
une autre option sera d’exécuter npm install --save express