使用MongoDB加载异步图像库的最佳JS框架

时间:2017-03-12 23:53:17

标签: reactjs meteor meteor-blaze

所以,过去一周我一直在考虑加载多个画廊。我一直在使用火焰模板在MeteorJS中工作但是,我使用的方法不起作用。

基本上,我的所有数据都来自多个MongoDB集合,这些集合组织在一个主集合中。当网站启动时,我想访问当前集合的列表,并为每个集合显示一个照片库。

(主要照片页)

{{#each collections}}
  {{>gallery collectionName=collectionName}}
{{/each}}

(图库模板)

<Template name="gallery">
  {{getPhotos}}
</Template>

我尝试过使用可重复使用的火焰模板,然后运行帮助程序来显示图像。它可以工作,但我一次只能加载一个模板/集合。我想首先加载一个,当完成后,加载下一个等。

我也想知道在后端使用ReactJS和MeteorJS,但在开始之前,我想知道逐个加载组件对模板有多容易?

感谢您的任何想法或帮助!

1 个答案:

答案 0 :(得分:0)

您可以尝试在帮助程序中合并游标,而不是在模板内部。这将强制您喜欢的顺序,并且仍然是被动的,因为find处于被动上下文(帮助程序)中。

(HTML)

<Template name="gallery">
  {{#each getPhotos}}
       <img src="{{this.src}}">
  {{/each}}
</Template>

(JS)

'getPhotos':function(){
    let mergedCursor = [];
    for (collectionObject in Template.currentData().collections){
        //not clear how you are getting the collections
        mergedCursor.concat(collectionObject.find().fetch());
    }
    return mergedCursor;
}

您也可以在同一个js文件中导入集合并直接合并它们。