web-dev-qa-db-fra.com

Comment puis-je ajouter des bibliothèques JavaScript tierces à une application Meteor?

Je veux ajouter un plug-in frontal JavaScript, comme jquery.center.js, vers une application Meteor.

Si je le mets dans mon app/ répertoire et actualiser la page J'obtiens cette erreur:

Votre application plante. Voici le dernier journal.

node.js: 201
lancer e; // erreur process.nextTick ou événement "error" au premier tick
^
ReferenceError: jQuery n'est pas défini
sur app/jquery.center.js: 43: 1
sur /Users/crapthings/Desktop/app/.meteor/local/build/server/server.js:111:21
sur Array.forEach (natif)
dans Fonction. (/Users/crapthings/Desktop/app/.meteor/local/build/server/underscore.js:76:11)
sur /Users/crapthings/Desktop/app/.meteor/local/build/server/server.js:97:7
Quitté avec le code: 1
Votre application se bloque. En attente de changement de fichier.

48
crapthings

Vous placez le fichier javascript plugin javascript directement dans le dossier de l'application, afin que le fichier javascript soit chargé pour le client ainsi que pour le serveur.

Selon la documentation Meteor:
Le client charge javascript depuis: project/public et project/client
Le serveur charge le javascript à partir des dossiers: projet/public et projet/serveur.

Depuis la version 1.0, Meteor utilise jQuery en interne dans le client, vous pouvez donc utiliser votre bibliothèque directement sans ajouter jQuery. Cependant, il est recommandé d'ajouter explicitement jQuery à votre projet Meteor:

météore ajouter jquery

Les documents Meteor expliquent en détail comment les fichiers JavaScript sont chargés et où les ressources statiques doivent aller (CSS, images).

Voir aussi comment reconditionner une bibliothèque existante pour Meteor.

38
Nachiket

Placez-le dans le dossier client de sorte qu'il ne soit chargé que sur le client, pas besoin de jQuery sur le serveur.

19
Tamara Wijsman

Une façon de le faire dans MeterorJS 1.3.x

Ajoutez les fichiers JS dans le public\js\ répertoire

enter image description here

Chargez-le à partir de la méthode Meteor.startup en utilisant $ .getScript dans client/main.js Si vous souhaitez contrôler la séquence de chargement du script, contrôlez avec plusieurs $ .getScript pour chaque fichier js.

enter image description here

Meteor.startup(function(){
    $.getScript('js/fhir-client.js', function(){
        // script should be loaded and do something with it. 

    });
});
12
Gajen Sunthara

À partir de Meteor 1.3, vous pouvez ajouter des bibliothèques JavaScript tierces à un projet Meteor directement via leur package npm :

meteor npm install --save moment

Les packages côté serveur et côté client fonctionnent sans modification, car le système de modules ES2015 de Meteor prend soin de créer un environnement de type nœud dans le client, tout comme le font Browserify ou Webpack.

Si un package npm ne fonctionne pas correctement, recherchez un wrapper sur Atmoshpere . Atmosphere est le 3ème dépôt de packages officiel de Meteor, mais de moins en moins pertinent après Meteor v1.3. Ce sera finalement éliminé .

Histoire

Avant Meteor 1.3, vous deviez reconditionner des bibliothèques tierces pour Meteor . Un outil appelé Autopublish a été développé pour automatiser le processus. Après que Meteor Development Group ait cessé d'offrir un hébergement gratuit sur meteor.com, la publication automatique a été interrompue.

3
Dan Dascalescu