2014-10-30 20 views
8

Con il lancio ufficiale di Meteor, c'è un modo solido di utilizzare i pacchetti NPM? Sto cercando di utilizzare embed.ly ma non vedo alcun modo semplice per farlo.Caricare il pacchetto NPM in Meteor 1.0?

Inoltre, come novizio di meteorite, come posso includere i pacchetti nei miei file? Non vedo alcuna funzione 'require' o 'exports'.

Grazie!

+1

Quando si aggiunge un pacchetto Meteor per la vostra applicazione, le sue esportazioni sono automaticamente accessibili nei file JS. Non c'è bisogno di usare richiedono. – stubailo

+1

Odio chiudere una domanda di Meteor, ma questo è un duplicato esatto di [Come possiamo o possiamo usare i moduli di nodo via npm con Meteor?] (Http://stackoverflow.com/questions/10165978/how-do -we-or-can-we-use-node-modules-via-npm-with-meteor) –

risposta

8

È possibile installare meteorhacks:npm

meteor add meteorhacks:npm 
meteor 

Meteor si fermerà. È quindi possibile modificare il nuovo file package.json

{ 
    "request" : "2.33.0" 
} 

Poi, quando si inizia a Meteor che installerà i moduli NPM per voi.

Uso sarebbe come segue (utilizzare Meteor.npmRequire invece di require)

request = Meteor.npmRequire("request"); 
+1

Vale la pena notare che Meteor.npmRequire è solo lato server. https://github.com/meteorhacks/npm – bitsoflogic

+0

Ciao, grazie per la risposta! In questo momento sto incontrando alcuni problemi con l'utilizzo del modulo JSFTP in particolare. Ho una domanda qui, lo apprezzerei se potessi darmi dei suggerimenti. http://stackoverflow.com/questions/28822711/running-ftp-in-meteor – kaid

+0

Vale anche la pena notare Meteor Supporta questo in modo nativo: http://docs.meteor.com/#/full/Npm-depends – jmunsch

10

Nel nuovo esempio "localmarket", che comprendono un pacchetto NPM nella directory del pacchetto in questo modo:

Request = Meteor.wrapAsync (Npm.require ('richiesta'));

e nelle package.js File:

Package.describe({ 
    summary: "Wraps the request module from Npm in a fiber.", 
    version: '0.0.0' 
}); 

Npm.depends({request: "2.33.0"}); 

Package.on_use(function (api) { 
    api.add_files('request-server.js', 'server'); 
    api.export('Request'); 
}); 
+2

la domanda non riguardava l'uso di pacchetti npm nei pacchetti di meteora. Il meccanismo per utilizzare i pacchetti npm è diverso dall'utilizzo in un progetto meteorico stesso –

+1

ma se è possibile includerlo in un pacchetto, è sufficiente aggiungere il pacchetto ... – Francis

+0

Sono d'accordo, questo mi sembra l'approccio più pulito, perché utilizzando le funzionalità già implementate. Invece di aggiungere un pacchetto di terze parti, che consente di includere pacchetti npm attraverso un altro file di configurazione, è sufficiente creare il proprio pacchetto e definire le dipendenze. – udondan

Problemi correlati