Comment “mnp” exécuter “npm test”?

J'ai toujours pensé que npm test commande lance ce que je voudrais écrire dans package.json à l'intérieur de scripts: { test: ...} section. Mais j'ai ce bug bizarre quand ça ne fonctionne pas.

Donc, j'ai ce morceau de config dans package.json

"scripts": {
  "start": "node index.js",
  "test": "mocha tests/spec.js"
}

Lorsque j'essaie d'exécuter des tests que j'type npm test dans le terminal et eu cette erreur:

module.js:340
    throw err;
          ^
Error: Cannot find module 'commander'

Mais tout est OK quand je tape juste mocha tests/spec.js. Des idées pourquoi est-ce?

Mise à JOUR:

J'ai essayé d'installer le commandant et j'ai eu une erreur Ne trouve pas le module 'glob'. Après l'installation de glob j'ai

D'erreur: Impossible de trouver le module '../'**

Mais en fait la question est pourquoi j'ai ces erreurs et pourquoi tout est OK lors de l'exécution de mocha tests/spec.js?

  • Où est le commandant installé dans votre système de fichiers?
  • Il fait appel à la commande spécifiée dans les scripts.propriété de test de package.json, mais il établit également certaines variables d'environnement, comme le CHEMIN d'accès de sorte que vous pouvez vous référer à des commandes qui n'existent que dans votre répertoire node_modules, mais il n'est pas installé à l'échelle mondiale.
  • Assurez-vous d'ajouter le commandant de votre colis.json et npm install : )
  • Je ne sais même pas ce que commander est et pourquoi en ai-je besoin
  • C'est probablement une dépendance d'un autre paquet, vous dépendez.
  • veuillez lire ma dernière question