我寻求一点帮助来包裹流星包。这一直是我在这个框架上的弱点。我知道这并不困难,我阅读了教程和一些文章,如: https://www.discovermeteor.com/blog/wrapping-npm-packages/ http://www.meteorpedia.com/read/Packaging_existing_Libraries
然而,我在出口和东西中迷失了,现在是时候理解了!
我试图打包这个包:
https://github.com/fians/Waves
(我知道有一天我不会找到有人在气氛上制作的包裹:()
所以我想按照dandv的指导方针做正确的事。我分叉了回购,添加了包含文件的meteor包:List
和export.js
。以moment为例,如您所见:
https://github.com/Voyag3r/Waves
最后,在我的应用程序中,我使用meteor命令创建了本地包文件夹:package.js
我试图调用meteor create --package voyag3r:waves
变量,它没有定义。我试着有没有大写字母。 (比如源代码waves.js)。不,我在export.js中尝试使用waves
而不是this.Waves
。
我认为有些东西我不了解命名空间和可见性,这次错误没有显示有用的信息。有人向我解释一下吗?因为我想做很多其他套餐!
谢谢!
答案 0 :(得分:0)
很高兴看到您阅读上述文档,因为它们非常有用。但是,据我所知,处理细节可能会令人困惑。希望我可以帮助你。
我最近为Meteor打包了几个库,所以你应该把这些存储库看作例子:
更具体地说,请查看上面的jspdf:core
存储库并检查meteor-pre.js
和meteor-post.js
文件,了解如何处理导出变量:
<强>流星pre.js 强>
var window = {};
<强>流星post.js 强>
jsPDF = window.jsPDF;
其他重要文件包括package.js
和package.json
,当然还有autopublish.json
,用于将版本更新与http://autopublish.meteor.com/集成,Luca Mussi @splendido是一个由Official Meteor integration directly from 3rd party libraries编写的精彩工具。
此外,我建议您查看my current attempt讨论并询问 @splendido 或 @dandv ,以获取有关为此库保留命名空间的帮助。< / p>
这个过程在过去几个月中经历了快速变化,尽管并不完美,但它正在稳步提升。我很高兴看到,像我一样,你想要帮助Meteor生态系统。