meteor 文件选择器

例子

为了扩展,我们必须停止在我们的服务器上使用本地存储,并开始使用专用的文件存储服务或实现水平存储层。开始使用可扩展文件存储的最简单方法是使用像 Filepicker.io 这样的解决方案,它支持 S3、Azure、Rackspace 和 Dropbox。loadpicker 一段时间以来一直是流行的 Filerpicker 单包。

meteor add mrt:filepicker

Filepicker 模式与其他解决方案有很大不同,因为它实际上是关于 3rd 方集成的。首先添加一个文件选择器输入,您将看到它严重依赖于 data-* 属性,这是 Meteor 应用程序中相当不常见的模式。

<input type="filepicker"
  id="filepickerAttachment"
  data-fp-button-class="btn filepickerAttachment"
  data-fp-button-text="Add image" 
  data-fp-mimetypes="image/*"
  data-fp-container="modal"
  data-fp-maxsize="5000000" 
  data-fp-services="COMPUTER,IMAGE_SEARCH,URL,DROPBOX,GITHUB,GOOGLE_DRIVE,GMAIL">

您还需要设置 API 密钥、构建文件选择器小部件、触发它并观察它的输出。

if(Meteor.isClient){
  Meteor.startup(function() {
    filepicker.setKey("YourFilepickerApiKey");
  });
  Template.yourTemplate.rendered = function(){
    filepicker.constructWidget($("#filepickerAttachment"));
  }
  Template.yourTemplate.events({
  'change #filepickerAttachment': function (evt) {
    console.log("Event: ", evt, evt.fpfile, "Generated image url:", evt.fpfile.url);
  });
});