如何在非Meteor项目中使用Meteor包

时间:2015-11-05 16:21:03

标签: javascript node.js meteor

我有标准的node.js REST API。我想使用一些流星的包,如Minimongo,Tracker,Blaze(任何Meteor&#39包)

有很多文章如何在Meteor中使用npm模块,但我有相反的任务。我应该创建一些包装器以使其可以用作节点模块吗?

有类似的问题:How to use Meteor packages outside of Meteor? 但没有人回答。

2 个答案:

答案 0 :(得分:1)

这是一个很好的问题,但你不能在{npm'中使用require作为流星。您也不能在普通的PHP中使用Drupal模块,它不会像在编写它们的上下文中那样工作。是的,你可以在Meteor中使用npm包,但这只是因为Meteor是在Node之上构建的,反之亦然。

Meteor拥有自己的打包系统,因为Meteor Packages是Isomorph,它们能够在客户端和服务器上共享代码,如SimpleSchema Package或许多其他。为了使开发人员能够轻松使用它,它是一个完整的封装系统。

但对你的问题。有一些真正有价值的"端口"流星包到普通的npm架构。例如,你提到了Tracker,所以有一个npm包。

......只是提一些......

要移植包,你只需要提取所需的代码,这些代码不依赖于Meteor和其他流星包,并创建一个npm包。所以代码仍然表现相同..只是看看跟踪代码

你必须决定,为什么你需要为你的节点/快递应用程序提供流星包?也许在npm世界本身已经有了一些更好的解决方案。如果你真的依赖于主要的流星包,那么就使用Meteor;)

答案 1 :(得分:0)

我只是得到同样的问题所以我环顾四周也许为时已晚 然而,发现了https://www.npmjs.com/package/meteor-client-packages-meteor

也许现在可能会有所帮助

或者使用作者推荐的https://www.npmjs.com/package/meteor-webpack-client

两者都可用..