Meteor:获取CollectionFS照片博客示例中上传图片的网址

时间:2016-04-23 22:20:49

标签: meteor collectionfs

我希望能够在教程示例making a photoblog in meteor中以javascript的形式传递已上传图片的网址。

在该示例中(在home.js中),渲染图像的模板的帮助器返回Images.find(),它在图像模板(image.html)中用于输出html以通过以下方式显示图像: p>

<img src="{{url}}" />

这个工作正常,整个教程也是如此,包括S3。但是,我想将它与另一个项目结合起来,并且需要在程序控制下存储和传递URL。

似乎因为模板能够使用{{url}},在js中,在最简单的情况下,可以使用Images.findOne()。url来获取至少第一个url。例如,我修改了给定的助手来包含这个:

Template.home.helpers({
  'images': function() {
   console.log("url from home helper:  = "  + Images.findOne().url);  //cannot read url property
   return Images.find();
   }
 });

然而,这会导致错误&#34;无法读取网址属性...&#34; (之后,由于某种原因,控制台打印出大量的源代码!)如果模板能够渲染字段&#34; url&#34;从收集图像对象,为什么不能看到它?

如何在javascript中获取网址?

1 个答案:

答案 0 :(得分:0)

网址不是属性,因此您必须使用Images.findOne().url()而不是Images.findOne().url

如果您收到相同的错误,因为您的findone方法返回undefined。 可能存在问题。

  1. 您的图片集是空的。
  2. 您没有发布图像,也没有订阅图像。
  3. 您可能在上传图片之前使用此电话。
  4. 我希望这可以解决您的问题。