Meteor找不到模块“;模块";

Meteor找不到模块“;模块";,meteor,Meteor,我正在尝试在meteor中安装该模块(该模块位于我的公用文件夹:app/public/node_modules) 我已经阅读了答案,并在server/server.js中添加了以下代码 Meteor.startup -> path = Npm.require 'path' fs = Npm.require 'fs' base = path.resolve '.' isBundle = fs.existsSync base + '/bundle' mo

我正在尝试在meteor中安装该模块(该模块位于我的公用文件夹:app/public/node_modules)

我已经阅读了答案,并在server/server.js中添加了以下代码

Meteor.startup ->
    path = Npm.require 'path'
    fs = Npm.require 'fs'
    base = path.resolve '.'
    isBundle = fs.existsSync base + '/bundle'
    modulePath = base + (if isBundle then '/bundle/static' else '/public') + '/node_modules'
    spooky = Npm.require modulePath + '/spooky'
但当我运行meteor时,我得到:

Error: Cannot find module '/Users/mac/Documents/websites/app/.meteor/local/build/programs/server/public/node_modules/spooky'

您需要创建一个智能包,以便在应用程序中使用Npm模块。或者,您可以使用meteor npm

您不能单独使用
Npm.require
用于spooky等非标准Npm模块

如果您使用meteor npm,您可以将其与meteorite一起安装:
mrt添加npm

然后在将模块添加到packages.json之后,使用Meteor.require(“幽灵”)。您可以在此处查看更多详细信息:

官方的做法是制作自己的智能包来封装npm模块。有这样一个包的例子:

该示例使用xml2js作为npm模块,但您可以交换名称,以使其变得可怕

然后,您可以将此软件包添加到您的
/packages
文件夹中(比如名称为
spooky
),并使用
meteor add spooky
将其添加到meteor项目中

atmosphere.meteor.com上的软件包中有更多这样的例子,它们几乎做了相同的事情(例如stripe())。

Akshat已经更新:

cd项目
流星添加流星黑客:npm
编辑
project/packages.json

{
“redis”:“0.8.2”,
“github”:“0.1.8”
}
使用这些npm模块:

var Github=Meteor.npmRequire('Github');
var github=new github();
getFromUser({user:'arunoda'},函数(err,gists){
控制台日志(gists);
});

只需使用-g安装软件包(
npm安装-g packagename
)。
public
文件夹朝外,每个人都可以看到。你不会想要的。加上流星/节点没有在那里找到它。谢谢你阿克沙!:)顺便说一下,您编写了“模块到您的package.json”。它应该是packages.json。