Javascript 如何在meteor js中正确实现发布和订阅

Javascript 如何在meteor js中正确实现发布和订阅,javascript,meteor,publish,subscribe,Javascript,Meteor,Publish,Subscribe,我想知道我的发布和订阅实现是否正确。我是meteor js的新手,请帮帮我。如果你需要更多关于我的代码的信息,我愿意给你其他的源代码。我阅读了关于发布和订阅的文档,但是我不理解关于它的文档 import { Mongo } from 'meteor/mongo'; import { Meteor } from 'meteor/meteor'; import { check } from 'meteor/check'; export const Notes = new Mongo.Collect

我想知道我的发布和订阅实现是否正确。我是meteor js的新手,请帮帮我。如果你需要更多关于我的代码的信息,我愿意给你其他的源代码。我阅读了关于发布和订阅的文档,但是我不理解关于它的文档

import { Mongo } from 'meteor/mongo';
import { Meteor } from 'meteor/meteor';
import { check } from 'meteor/check';

export const Notes = new Mongo.Collection('notes');

if(Meteor.isServer) {
  Meteor.publish('secureData', function() {
    return Notes.find({});
  });
}

if(Meteor.isClient) {
  Meteor.subscribe('secureData');
}

传递给new Mongo.Collection的字符串应与传递给publish和subscribe的字符串相同。在notes替换secureData的情况下尝试同样的方法

if(Meteor.isServer) {
  Meteor.publish('notes', function() {
    return Notes.find({});
  });
}

if(Meteor.isClient) {
  Meteor.subscribe('notes');
}

如果您还有其他问题,请在您的代码中发布示例,说明如何访问此集合。

将您的代码放在此处而不是图像中。我将您的代码直接添加到文章中,并省略了不必要的行。下一次,如果你将代码直接放在帖子中,你将获得更少的反对票谢谢您的回复,先生,我会尝试立即改变它!我很高兴它做到了。这个答案是错误的。你可以随意调用你的出版物。它应该与MongoDB集合的名称无关。问题并不是说到底是什么问题,但考虑到发布的原始代码,这仅仅是调用console.log时客户端上的数据不可用的问题。问责性很好,但我通过在我自己的工作项目订阅中复制@migmig的代码来测试这一点。工程停止了。当我在控制台中查询该集合时,它似乎是可用的,但是数据集不是被动的,并且我的模板从未更新过。我刚才重复的这个测试,加上migmig确认这有帮助的事实,让我相信我可以站在这里。我将删除我的第二段关于让一个收藏的订阅从另一个收藏的数据集中提取的内容,因为它有点离题,措辞不明确。如果你能指出使我的论点无效的东西,欢迎你进一步编辑。