Meteor:在 CollectionFS 照片博客示例中获取 url 上传图像
Meteor: Get url of uploaded image in CollectionFS photo-blog example
我希望能够在教程示例 making a photoblog in meteor 中传递 javascript 中上传图片的 URL。
在该示例中(在 home.js 中),呈现图像的模板助手 returns Images.find(),用于图像模板 (image.html ) 输出 html 通过以下方式显示图像:
<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();
}
});
然而,这得到了错误"cannot read url property..."(之后,由于某种原因,控制台打印出一大堆源代码!!)如果模板能够渲染字段"url"来自集合图片对象,为什么js看不到?
如何到达 javascript 中的 url?
url 是函数而不是 属性 所以你必须使用 Images.findOne().url()
而不是 Images.findOne().url
或
如果您遇到相同的错误,因为您的 findone 方法 return 未定义。
存在可能的问题。
- 您的图片集是空的。
- 您当时没有发布图片也没有订阅图片。
- 您可能在上传图片之前使用此调用。
希望这可以解决您的问题。
我希望能够在教程示例 making a photoblog in meteor 中传递 javascript 中上传图片的 URL。
在该示例中(在 home.js 中),呈现图像的模板助手 returns Images.find(),用于图像模板 (image.html ) 输出 html 通过以下方式显示图像:
<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();
}
});
然而,这得到了错误"cannot read url property..."(之后,由于某种原因,控制台打印出一大堆源代码!!)如果模板能够渲染字段"url"来自集合图片对象,为什么js看不到?
如何到达 javascript 中的 url?
url 是函数而不是 属性 所以你必须使用 Images.findOne().url()
而不是 Images.findOne().url
或
如果您遇到相同的错误,因为您的 findone 方法 return 未定义。 存在可能的问题。
- 您的图片集是空的。
- 您当时没有发布图片也没有订阅图片。
- 您可能在上传图片之前使用此调用。
希望这可以解决您的问题。