Dont un .fichier js dans node.js
Je suis en train d'essayer d'inclure ce script dans mon application: http://www.movable-type.co.uk/scripts/latlong.html
J'ai enregistré dans un fichier appelé lib/latlon.js et j'essaie de l'inclure comme ceci:
require('./lib/latlon.js');
Comment dois-je aller sur l'inclusion d'une bibliothèque JS comme ça?
OriginalL'auteur Tom | 2011-09-05
Vous devez vous connecter pour publier un commentaire.
Tout d'abord, vous devriez jeter un oeil à la documentation des Modules pour node.js:
http://nodejs.org/docs/v0.5.5/api/modules.html
Le script que vous essayez d'inclure n'est pas un node.js module, de sorte que vous devriez faire quelques modifications. Comme il n'y a pas la même portée globale entre les modules node.js vous devez ajouter toutes les méthodes que vous souhaitez accéder aux exportations de l'objet. Si vous ajoutez cette ligne à votre latlon.js fichier:
...vous devriez être en mesure d'accéder à la LatLon fonction comme ceci:
exports.LatLon
, vous obtenez avecrequire('./lib/latlon.js').LatLon
. Pour utiliserrequire
comme dans votre exemple,latlon.js
besoins de l'exportation elle-même avecmodule.exports = LatLon
.Oups, je suis désolé à ce sujet - merci 🙂 j'ai édité ma réponse.
Assurez-vous. Mais, il est parfaitement OK pour faire
module.exports = LatLon
, ou pour ignorer l'enregistrement du module à une variable et l'ensemblevarLatLon = require('./lib/latlon.js').LatLon
en une seule étape — ils sont à la fois des modèles communs.J'ai seulement utilisé le module.les exportations de retourner une instance. Le LatLon constructeur de paramètres. Comment cela fonctionnerait-il?
JavaScript n'est pas de soins, les fonctions sont des objets comme tout le reste! Dans le module:
module.exports = LatLon;
. Dans l'application:var LatLon = require('latlon');
. Plus tard:var someLatLon = new LatLon(param, param, param);
.OriginalL'auteur Jørgen