Meteor发布、订阅

详解:

发布和订阅是meteor的重要部分。

meteor数据库在服务端有mongo 本地有minimongo,这是moteor重写本地mongo。

推送数据库子集到客户端。

这样呢服务器就不需要再发送html到本地了,而是发送直实的原始数据。

让客户端决定如何处理数据。

不用再等待服务器传回数据,而是立即访问和修改数据。

发布:

数据库的数据会有几百万条,有一些是保密的或敏感的数据。

我们不能简单把数据库镜像到本地。

我们通过发布来实现,条件性的发布数据。

这样本地就无法访问那些私有的数据。

保证只发布当前用户可看到的数据。

发布/订阅就是一个漏斗,从服务器数据过滤数据再发送到本地。

这叫做DDP。

订阅:

现在已经把条件过滤后的数据发送过来了,但我们也不能一下把几百万的数据发送出去。

我们需要一个机制让本地来确定哪些子集需要。

这就是订阅。

订阅的数据会镜像到本地。

可以在订阅时指定参数,返回需要的数据。

如我们的模板需要某条件下的数据,

可以return posts.find({author:'star'});


autopublish:

它是一个简单的起步,把服务器上所有集合都镜像到本地,这样就不必管发布和订阅了。

所以需要Meteor.publish('allpost',function(){

return posts.find()

});

创建发布。

这样本地就只会镜像发布的集合。

发布部分字段:

Meteor.publish('allPosts', function()

return Posts.find({}, {fields: { date: false }});

});

你可能感兴趣的:(Meteor发布、订阅)