2017-07-22 4 views
1

Je ne peux pas utiliser un module node.js sur mon site avec broweserify. L'exemple montre seulement comment exécuter un fichier javascript séparé du fichier .html, pas comment utiliser le module node.js au sein de le fichier .html. Cela ressemble à un problème trivial, mais je suis incapable de le faire fonctionner.Comment utiliser les paquets Node.js dans un document html côté client en utilisant browserify

Voici ce que je l'ai fait:

  1. initialisés Node.js & installé un paquet, npm i webtorrent-health comme un exemple
  2. Créé require_stuff.js qui consiste en une seule ligne: var WebtorrentHealth = require('webtorrent-health')
  3. Run browserify: browserify require_stuff.js > bundle.js
  4. Inclure le paquet dans mon document html, par exemple <script src='bundle.js'></script>
  5. Utilisez le package quelque part dans mon document, par ex. comme ceci: <script>webtorrentHealth(magnet).then(foobazbar())</script>

Malgré bundle.js exécution et la définition apparemment webtorrentHealth, le script dans le document .html échoue avec WebtorrentHealth is not defined. Qu'est-ce que je fais mal? Comment puis-je le faire fonctionner? Je vous remercie!

Répondre

0

Vous êtes très proche de ce que vous voulez réaliser. En fait, votre code bundle.js est inaccessible de l'extérieur (dans votre cas le navigateur) en raison de browserify, mais vous pouvez exposer votre module en écrivant à la fin de votre fichier require_stuff.js:

window.WebtorrentHealth = WebtorrentHealth ;

Maintenant vous pouvez utiliser WebtorrentHealth dans votre document.