在Meteor 1.0中加载NPM包?

kai*_*aid 8 node.js npm meteor

随着Meteor的正式发布,是否有一种可靠的方式来使用NPM包?我正在尝试使用embed.ly,但我没有看到任何直接的方法.

另外,作为流星新手,如何在我的文件中包含包?我没有看到任何"要求"或"出口"功能.

谢谢!

Fra*_*cis 10

在新的"localmarket"示例中,它们在包目录中包含一个npm包,如下所示:

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

并在package.js文件中:

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');
});
Run Code Online (Sandbox Code Playgroud)

  • 问题不在于在流星包中使用npm包.使用npm包的机制与流星项目本身的使用不同 (2认同)

Aks*_*hat 8

你可以安装 meteorhacks:npm

meteor add meteorhacks:npm
meteor
Run Code Online (Sandbox Code Playgroud)

然后流星将停止.然后,您可以编辑新的package.json文件

{
    "request" : "2.33.0"
}
Run Code Online (Sandbox Code Playgroud)

然后当你启动Meteor时,它会为你安装npm模块.

用法如下(用来Meteor.npmRequire代替require)

request = Meteor.npmRequire("request");
Run Code Online (Sandbox Code Playgroud)

  • @jm_____"meteorhacks:npm"包实际上只是Npm.depends和Npm.require的代理.它本身并不简单,因为它需要你制作一个包含它们的包,就像meteorhacks:npm没有你必须写一个. (2认同)