【问题标题】:How to retrieve single image URL from Meteor CollectionFS?如何从 Meteor CollectionFS 检索单个图像 URL?
【发布时间】:2015-06-03 12:35:19
【问题描述】:

我需要从 CollectionFS 检索图像的 URL。帖子中引用了图片 ID,因此首先我找到了属于某个帖子的图片,如下所示:

模板:

{{#each drafts}}
    <img src='{{images pictures.[0]}}'>
{{/each}}

助手:

images: function (id) {
    console.log(id);
    console.log((Images.findOne()));
    return Images.findOne({_id:id});
}

根据 CollectionFS 示例,您可以使用 {{image.url}} 获取图像的 URL,但在我的情况下,{{images.url pictures.[0]}} 不起作用并将把手错误返回到控制台。在我的情况下访问 images.url 数据的正确方法是什么?

【问题讨论】:

    标签: meteor handlebars.js spacebars collectionfs


    【解决方案1】:

    其实没有理由使用Template.helper来访问URL,FSCollections自带了一个方便的UI-helpers,你可以这样使用。

    {{#each drafts}}
        URL: {{this.url}}
        <img src='{{this.url}}'>
    {{/each}}
    

    请确保您拥有正确的下载权限

    Images.allow({
     download:function(){return true;}
    })
    

    仅供参考如果您使用的是findOne,则不可能使用{{#each}},您应该使用{{#with}},因为每个助手只接受数组和对象

    查看Understanding SpaceBars

    【讨论】:

      【解决方案2】:

      在 helper 中你可以这样调用:

      var image = Images.findOne({_id:id});
      return image.url();
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2016-03-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-07-02
        相关资源
        最近更新 更多