问题标签 [meteor-publications]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
671 浏览

meteor - 当我运行 Meteor.disconnect() 然后 Meteor.reconnect() 时,Meteor 会清除 minimongo,我该如何防止这种情况发生?

我们在我们的应用程序中使用快速渲染,因此应用程序需要的所有数据都与应用程序本身一起发送。我们没有使用任何 Meteor.subscribe 调用,因为 minimongo 由快速渲染填充。

渲染后,我们运行 Meteor.disconnect()

在未来的某个时候,我们想要重新连接以调用特定的方法,但是当我们重新连接时,minimongo 会被清除。

我们如何防止 Meteor 在重新连接时清除 minimongo 中的所有文档?

0 投票
0 回答
934 浏览

reactjs - Meteor React 无限滚动:停止组件刷新

我正在使用 Meteor 和 React。我有一个包含在 react-composer 中的组件来订阅我的数据。我将服务器发布的限制设置为 10,并在每次用户将按钮滚动到另一个 10 时提高此限制。

问题是,整个组件似乎都在刷新,而不是仅将 10 个新元素添加到视图中。我如何才能重新加载仅附加数据,而不进行总“页面”刷新?


原则上,我使用 javascript 来检测用户何时到达页面底部,然后在父组件中触发一个函数来更改我的 LocationList 的限制状态,然后触发服务器发布以加载更多位置。

服务器/Publication.js

客户端/LocationList.jsx

客户端/LocationListLoader.jsx

0 投票
2 回答
170 浏览

meteor - 重叠流星出版物

我有一个流星应用程序,其中有 2 个帖子出版物。一个用于所有帖子,一个用于特色帖子。有 2 个精选帖子 - “帖子 1”和“帖子 4”。我在所有页面上显示精选帖子,同时按名称对所有帖子(包括精选帖子)进行分页。当我在页面之间旅行时,来自 2 个出版物的数据会混淆并显示不正确的结果。

这是代码:

在客户端上,我同时订阅并在 2 个循环中显示数据

HTML模板如下:

问题是来自 2 个订阅的数据在显示中混淆了。

在第 1 页上,它正确显示:

但是当我转到第 2 页时

它在“帖子”中显示“帖子 1”,这是特色但不应该出现在第 2 页上。当我转到第 3 页时,我看到“帖子 1”和“帖子 4”,但它们不应该在那里。

我了解出版物和订阅是如何工作的,以及为什么会发生这种情况——因为出版物合并了数据集。我想知道是否有办法让它们分开?

0 投票
1 回答
14 浏览

reactjs - React 容器中的集合助手有时会丢失

据我了解,集合助手是使用文档上的转换来实现的。但是,有时我的助手似乎不见了。

在 foo.js 我定义:

在我的容器中。我订阅了一个复合出版物 (reywood:publish-composite),当sub.ready()我获取时:fooDoc = Foo.findOne(fooId).

返回的文件有时没有owner属性。 fooDoc.owner is not a function.

有任何想法吗?

0 投票
1 回答
31 浏览

javascript - 使用发布为订阅创建进度条

我多次调用 Google Analytics API 并将该数据加载到订阅中。现在我想创建一个进度条来通知用户正在加载数据并查看需要多长时间。

我读到最好使用出版物将数据从服务器传递到客户端。这是真的?

我在服务器上创建了以下出版物。什么是如下:

  1. 设置初始 progressValue 和 id 为 1 的初始发布
  2. 如果 progressValue 小于 100 则继续循环,并告诉 1 的发布正在更改。
  3. 在此代码下方,我有另一个正在运行的出版物,其中 progressValue 正在循环中的步骤中设置。

在查看客户端时,只会发布最后一个 progressValue。在此之前,我收到了很多空数组。所以它就像:

我想要的是客户端收到 progressValue 的每一个变化,而不仅仅是最后一个。我该如何解决这个问题?

如果对如何创建订阅进度条有更好的建议,这些答案也将被接受。

0 投票
1 回答
109 浏览

pagination - 多次发布集合 Meteor js

我有一个集合,我必须将其作为一个整体以及部分发布。现在的挑战是,一旦我作为一个整体发布,它会覆盖假设一次只返回 5 个的那个。有限制的发布是为了实现分页,同时发布都进入一个下拉框。如何发布一个集合,以便没有一个集合会覆盖另一个集合?

这是部分出版。设置限制为 5。

整体发布

0 投票
2 回答
502 浏览

meteor - 发布和订阅单个对象 Meteor js

如何发布单个对象对我来说似乎不够清楚。请问什么是最好的方法来处理这个。此代码片段不会在视图上显示任何内容。

帮助文件

发布文件

模板文件

0 投票
2 回答
95 浏览

meteor - Meteor 发布覆盖另一个发布

我有如下两种发布方法,但是当我订阅客户端搜索页面中的一种发布方法时,它被另一个用于索引页面的方法覆盖。

服务器

客户 - 搜索页面

客户端 - 索引页面

有谁知道如何避免这种情况?

0 投票
1 回答
157 浏览

meteor - 如何正确使用 this. added

我正在尝试发布一个集合,我想添加一个集合中不存在的字段。我可能在这里偏离轨道,但我认为我可以使用this.added()将字段添加到已发布的集合中。有人可以告诉我我做错了什么吗

0 投票
1 回答
756 浏览

reactjs - Meteor/React - 更新订阅状态变化

我在订阅和 React 方面遇到了麻烦,也许我做得不对。

这是问题所在:我想创建一个包含 mongo 集合提供的电影列表的页面,还有一个流派过滤器和​​一个“加载更多”按钮。

当我只使用加载更多时,我更新发布以跳过现有项目并返回新项目,它运行良好。

当我更改流派过滤器时,我只需使用该过滤器更新我的出版物,也可以正常工作...

但是,如果我同时执行这两个操作,例如:加载更多,然后按类型过滤,结果看起来很糟糕并且似乎保留了旧结果,分页不会重置为默认值。

这是我的代码的简化版本。

服务器端发布:

客户端组件:

这是一个更好的方法吗?谢谢你的帮助 !