2017-08-29 2 views
0

Je ne suis pas du tout expert en Node mais j'apprends! Je suis récemment tombé sur un module que je voulais inclure dans un projet "responsive-backgrounds" https://www.npmjs.com/package/responsive-backgrounds.Node Module Issue

Tout est installé avec npm install --save-dev responsive-backgrounds et semble bien (c'est-à-dire que je peux voir ResponsiveBackgrounds dans ma JS distributon minifed et uglified). Dans mon fichier JS je:

require("responsive-backgrounds"); 
options = { 
    lazy: true, 
    transition: 0.5 
}; 
new ResponsiveBackground("#featuredimage", options); 

Cependant je reçois Uncaught ReferenceError: ResponsiveBackground is not defined quand je lance mon browserified et uglified JS. Est-ce que je manque quelque chose de crucial? Je suis sûr qu'il existe d'autres bibliothèques qui font le même travail ou même mieux mais c'est plus pour comprendre comment inclure correctement les modules de nœuds.

Répondre

0

nécessité de définir la variable au module que vous essayez d'importer essayer:

let ResponsiveBackground = require("responsive-backgrounds"); 
    options = { 
     lazy: true, 
     transition: 0.5 
    }; 
    new ResponsiveBackground("#featuredimage", options); 
+0

Dans mon cas, je « var » au lieu de « laisser ». Le code complet est: ' var ResponsiveBackground = require (" responsive-backgrounds "); jQuery (document) .ready (function() { \t options = { \t \t paresseux: true, \t \t transition: 0 \t}; \t nouvelle ResponsiveBackground ("# featuredimage", options); }); 'Une idée de pourquoi 'let' produit une erreur? – Zakalwe

+0

Oh, je ne savais pas que c'était dans le navigateur, pour une raison que je pensais que vous utilisiez node.js. De ma connaissance la syntaxe es6 let/const n'est pas encore supportée dans les navigateurs mais dans les nœuds. voici une documentation sur let https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/let –

+0

En fait, j'utilise Node donc un peu confus quant à savoir pourquoi cela est tombé. Je m'attendais à ce que le "let" soit échangé quand j'ai lancé "browserify" mais cela ne semblait pas arriver. Je sais que c'est à ma compréhension plutôt que toute autre chose. – Zakalwe