最佳 JS-Framework 异步图库加载 MongoDB

Best JS-Framework for Asynchronous Image Gallery Loading with MongoDB

所以,在过去的一周里,我研究了一次加载多个画廊。我一直在使用 blaze 模板在 MeteorJS 中工作,但是我使用的方法不起作用。

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

(照片主页面)

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

(图库模板)

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

我试过使用可重复使用的 blaze 模板,该模板提供数据,然后运行一个帮助程序来显示图像。它有效,但我一次只能加载一个 template/collection 时遇到问题。我想先加载一个,完成后加载下一个,依此类推。

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

感谢任何想法或帮助!

您可以尝试在助手中而不是在模板中合并游标。这将强制执行您喜欢的顺序并且仍然是反应性的,因为 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文件中导入集合,直接合并。