问题标签 [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 回答
272 浏览

meteor - 如何从客户端访问 Meteor.users() 字段?

我想从客户端访问用户的电子邮件,这是我在服务器端所做的:

在客户端:

以及用于检索用户的模板助手:

usersManagement模板中:

会显示用户名,但不会显示电子邮件,并且控制台中不会显示任何错误。

以下是用户如何存储在数据库中的外观:

我的问题是,如何检索用户的电子邮件?

编辑

以下是(从控制台)检索电子邮件的方式:

电子邮件

电子邮件下方还有另一个字段 (0)。我试过this.emails.0.address它没有用(绝望的尝试)

0 投票
1 回答
237 浏览

mongodb - 流星出版物排序

我有一个 Meteor-react 应用程序,其中包含一个包含大量数据的集合。我正在使用pagination显示数据。
在服务器端,我只是发布当前页面的数据。

所以,我在服务器端发布了一些数据:


在客户端,我正在使用跟踪器:


问题是:

当我尝试在客户端修改排序选项时,服务器不是从第一个数据排序(跳过第一个数据)。有时从 20 日起有时从 10 日起。类型检查在两侧进行。

0 投票
2 回答
62 浏览

database - 让发布返回修改/“假”/非数据库数据,客户端仍然可以查询

标准出版物看起来像这样:

并且一旦订阅,结果就可以通过简单的操作在客户端中访问MyDB.find(...);

但是,我将如何实施

(a) 某种预处理,这意味着我在服务器端向查询的文档添加或删除某些属性,那应该仍然是可查询的客户端吗?

(b) 返回虚假数据,即遵循数据库模式的数据并且仍然可以在客户端查询,但实际上不存在于服务器端?

例子:

因此,如果我随后在客户端订阅“建议”,我希望看到以下内容:

基本上,如上所述,我希望在发送到客户端之前对数据库数据进行一些或完全修改,但是客户端应该能够像直接来自数据库一样查询它。

我该怎么做呢?

0 投票
2 回答
688 浏览

meteor - 流星发布/订阅不起作用

我在流星 1.7 中工作,我的发布/订阅只返回空数组。文件结构:

shared.js:

客户端/main.js:

服务器/main.js

其他地方.js

为什么我没有得到我正在发布的内容?

- - - - - - - - - - - - - - - - - - -新的东西 - - - - - - ----------------------

我现在不确定这是加载顺序问题、反应性问题、发布/订阅问题还是它们的混合问题。我有这个片段

我还注意到此日志的输出发生在我订阅之前。该文件位于 /imports/scripts/tools.js

0 投票
1 回答
35 浏览

javascript - 为什么我的帮助集合查询没有反映在 html 模板中?

按照关于如何“编写 API ”的教程,我似乎陷入了困境,无法超越如何让生成的 API 密钥显示在模板中。

APIKeys.find().fetch()在帮助程序中有一个查询应该正确反映在 html 模板中,但它没有。我花了几个小时查看我的代码,但没有注意到我的代码中有任何错误。

我对 Meteor 并不陌生,这让它变得更加烦人!

请帮忙!

在模板代码下面找到: /client/main.html

在上面的模板中,NOTHING 在value="{{apiKey}}". 我不明白这是为什么。

在我的助手代码下面找到:/client/main.js

上面的帮助代码在控制台中呈现了这个Failed! Can't find: APIKeys.findOne():此外,当我APIKeys.find().fetch()在控制台中查询时,我得到了这个:

在我的 onCreated 代码下面找到:/client/main.js

上面的 onCreated 代码在控制台中呈现了这个:Your in onCreated!

在下面找到触发以生成新 API 密钥的事件代码:/client/main.js

上面的事件代码呈现一个弹出框:All done! You have a new API key: 0。控制台还呈现:Response is: 0.

在下面找到regenerateApiKey方法代码/server/main.js

上面的方法代码在终端中呈现以下内容:

我已将代码中的问题缩小到这一点。keyId等于“0”的变量表明 APIKeys 集合没有得到更新。谁能解释为什么会这样?

我已经提供了更多信息,希望它会有所帮助。

在我订阅/client/main.js的代码下方找到

在我发布/server/main.js的代码下方找到

上面的发布代码在终端中呈现以下内容:

在我声明集合imports/api/tasks.js的代码下方找到

0 投票
1 回答
134 浏览

mongodb - 异常 Mongo Server 和 Meteor 查询不同意有多少文档与您的查询匹配

这基本上是我在 Meteor 项目中遇到的例外。

我有Meteor.publish一个简单的查询:

然后我在我的客户上有这个:

这是我的控制台的结果:

流星版本:1.6.1

蒙哥版本:3.4.10

Meteor(内包)版本:1.3.0

Mongo(内包)版本:1.4.2

我想要一个不需要更新任何版本的解决方案。谢谢!

0 投票
1 回答
18 浏览

meteor - 如何发布文档 ID?

我正在尝试访问_id客户端中的文档

这是我发布它的方式:

在客户端中,当我尝试console.log()使用 id 时,我将“_fc4”打印到控制台

这是我的代码(在客户端):

event 是返回的文件。event.title打印,event.startevent.reasons到控制台时,我得到了正确的值。但我_fc4在尝试时得到event._id

我现在的问题是,如何_id正确发布?

注意:尝试更改"_id"_id在控制台中收到相同的结果

0 投票
2 回答
60 浏览

mongodb - Meteor-publish 返回比 MongoDB 所需的更多行

我有一个收藏:

我需要为一个团队 ID 和当前用户 ID (this.userId) 返回“userScores”。所以我做了这个发布方法。

但是在流星/反应应用程序中,我收到(this.props.receivedScores)整个文档,所有行都在“userScores”中。

如何只获取一个团队和一个给出分数的用户的数据?谢谢 :)

0 投票
1 回答
135 浏览

mongodb - 流星过滤发布限制并跳过总计数

给定一个过滤和分页的流星出版物,我如何获得应用过滤后的总计数?

客户代码:

服务器代码:

这将返回给定日期和页面的预期帖子,但问题是知道总过滤计数。

假设有 1000 个帖子,其中 100 个适用于此日期和用户。当一次只返回 10 个时,如何获得 100 个计数?

0 投票
1 回答
56 浏览

mongodb - 在循环中使用 Meteor 方法调用进行批量更新和插入,从而提高 CPU 使用率

我的应用程序在 METEOR@1.6.0.1 上,我正在使用  reywood:publish-compositematb33:collection-hooks  来处理数据库关系。

我需要将 400 人的列表插入到来自 excel 文件的集合中,因为目前我正在使用循环内的 Meteor 方法从客户端插入,但是当我在 Galaxy 上看到此期间 CPU 使用率非常高 70-80% 或某个时间 100% .

插入所有数据后,我需要发送邮件并更新记录,因此我正在发送邮件并使用 Meteor 方法调用更新,这再次使 CPU 占用 70-80%。

我如何以正确有效的方式完成上述任务。请帮忙。

谢谢。