node.js - instalar - npm last version
¿Cómo se ejecuta "npm" prueba de "npm"? (1)
Siempre pensé que el npm test
simplemente npm test
lo que escribiría en package.json
dentro de los scripts: { test: ...}
sección scripts: { test: ...}
. Pero tengo este error extraño cuando no funciona.
Por lo tanto, tengo esta pieza de configuración en package.json
"scripts": {
"start": "node index.js",
"test": "mocha tests/spec.js"
}
Cuando intento ejecutar pruebas, npm test
en el terminal y tuve este error:
module.js:340
throw err;
^
Error: Cannot find module ''commander''
Pero todo está bien cuando mocha tests/spec.js
solo mocha tests/spec.js
¿Alguna idea de por qué es eso?
ACTUALIZAR:
Intenté instalar Commander y tuve un error. No se puede encontrar el módulo ''glob'' . Después de instalar glob
tengo
Error: No se puede encontrar el módulo ''../''**
Pero en realidad la pregunta es ¿por qué tengo estos errores y por qué todo está bien al ejecutar mocha tests/spec.js
?
Puede tener dos versiones de mocha instaladas: una a nivel mundial ( npm install -g mocha
) y una a nivel local, que parece estar dañada.
Cuando ejecuta una secuencia de comandos a través de npm
, ya sea como npm run-script <name>
o con un acceso directo definido como npm test
o npm start
, el directorio bin
directorio de paquetes actual se ubica al frente de su ruta. Para su paquete es probablemente ./node_modules/.bin/
, que contiene un enlace al script ejecutable mocha
su paquete.
Probablemente pueda solucionar esto eliminando el mocha local y reinstalándolo con --save-dev:
rm -rf node_modules/mocha npm install --save-dev mocha
Eso debería proporcionarle una copia local de mocha con todas sus dependencias (comandante, etc.) instalada.