[Javascript] Répertoire racine dans package.json


Answers

package.json est principalement un fichier utilisé par npm pour installer et gérer les dépendances.

la construction require ne se soucie pas beaucoup de package.json donc vous ne pourrez pas l'utiliser pour subvertir la façon dont require fonctionne et lui faire croire que les packages ne sont pas là où le schéma de chargement require les attend.

Voir la documentation sur https://nodejs.org/api/modules.html et le schéma de chargement ici: https://nodejs.org/api/modules.html#modules_all_together

vous pourriez peut-être utiliser la technique que la documentation appelle 'Chargement à partir des dossiers globaux' et définir la variable d'environnement NODE_PATH .

mais je vous conseille de vous en tenir à une manière plus standard: - mettez vos modules dans un répertoire node_modules - ou démarrez votre hiérarchie de module dans le même répertoire où se trouve votre app.js ou index.js

Question

Ma question concerne une bibliothèque existante que je souhaite publier en tant que module NPM. La bibliothèque est déjà utilisée et require actuellement d via le système de fichiers local.

Comment puis-je spécifier le répertoire racine des fichiers de mon module?

Si j'ai une structure comme:

.
├── package.json
├── src
|   ├── js
|   └────── lib
|   └───────── my
|   └───────────── thing.js
|   └───────────── that.js

Comment puis-je spécifier que la racine de mon module et les fichiers accessibles sont src/js/lib/my/ ?

Je voudrais utiliser comme suit d'un projet extérieur:

var thing = require('my/thing'),
    that = require('my/that');

J'ai vu la propriété "files" dans package.json, est-ce la bonne façon de procéder?