1

我试图弄清楚如何将 html 图片元素链接回最初用于生成图片链接的数据库条目。

我正在使用 Meteor: - 我有一个数据库,其中包含来自 Flickr API 的照片集数据 - 在 HTML 中,我有一个把手“每个”脚本,它遍历数据库中的每个照片集,然后使用此信息生成照片集的 html封面图片链接。- html 渲染时,从 Flickr 下载照片集封面图片并显示到屏幕上。

我希望能够点击photoset封面图片,然后自动生成photoset中图片的链接。但我不明白如何将 html 图片元素动态链接回它们各自的数据库条目,这些条目最初用于生成图片链接。我需要能够找到原始数据库条目,以便加载生成后续链接所需的信息。

作为所有这一切的新手,我不确定从哪里开始寻找或尝试什么。我想知道如何使用自定义密钥对创建一个对象来“记住”每张照片集的身份。这是要走的路,还是我忽略的更简单的方法?

谢谢。

4

1 回答 1

3

假设您的图片以这种方式发布:

Template.mytemplate.helpers({
    picture:function() {
        return pictures.find()
    }
});

你也可以这样做,这几乎是一样的:

Template.mytemplate.picture = function() {
    return pictures.find();
}

与 html

<template name="pictures">
    {{#each picture}}
        <img src="{{src}}" class="pictureselector"/>
    {{/each}}
</template>

您可以使用可以从该特定图片文档/记录中获取数据的事件

Template.mytemplate.events({
    'click .pictureselector':function(event,template) {
        console.log(this._id); //Should give you the `_id` of the picture that was clicked

    }
});

this是被点击的元素的数据上下文并使用里面的数据生成你想要的链接this

如果您在 click 中使用带有回调的东西,请小心Meteor.call,您将不得不通过以下方式传递消息,var self = this否则上下文this将成为Meteor.call

于 2013-05-16T07:36:38.053 回答