为什么不在Meteor中呈现第三方JavaScript库?

时间:2013-10-23 22:43:13

标签: meteor dropzone.js filepicker.io

我刚刚开始使用

我似乎无法理解如何正确加载use 3rd party JavaScript libraries

我正在尝试在第三方的帮助下实现文件上传表单。我希望像DropzoneJS或jQuery Multiple File Upload这样的东西来处理文件选择,而Ink File Picker将文件存储在云中。

问题是当我尝试使用库时,库不会做出反应。我可以在浏览器中看到库已加载,并且控制台没有显示任何错误。

使用DropzoneJS的示例:

JS:

Template.frontpage.rendered = function () {
  $('#dropzone').dropzone({ url: '/file/post' });
}

首页模板中的HTML:

<form id="dropzone"></form>

检查时会出现以下结果:

<form id="dropzone" class="MultiFile-intercepted dz-clickable"></form>

正在发生一些事情,但表格根本没有视觉呈现。

我将lib放在/ client / libs目录中。正如一些人所建议的那样,我也尝试将它们放在/ client / compatibility中。

我也试过了Dropzonejs meteorite package并没有区别。

我做错了什么?如何在Meteor中使这些库正常运行?

2 个答案:

答案 0 :(得分:1)

这样做的方法是创建智能包并将其包含在您的应用中。

http://docs.meteor.com/#writingpackages

有很多软件包示例可供使用。

https://atmosphere.meteor.com/

对于快速入侵,您还可以通过在main.html中创建标记来加载javascript或调用$ .getScript()。但不建议这样做,因为某些库会发生命名空间/名称冲突。

答案 1 :(得分:0)

某些第三方图书馆可能与Meteor一起开箱即用,而其他图书馆可能不会。

如果您确实遇到Dropzonejs meteorite package的问题,那么您应该在其GitHub上提交一个错误,因为meteorie包应该有效。

对于其他第三方图书馆,问题通常是范围界定。查看 Packaging Existing Libraries for Meteor 以获取建议。通常需要的是一些出口声明。

相关问题