我正在考虑在 Meteor 中构建我的下一个应用程序。除其他外,我的数据模型将包含要传递给客户端的对象,但其内容需要在推送之前动态过滤。
例子:
var obj = {
name: "John",
secret: "A very shy guy"
}
我希望能够secret
为“管理员”用户访问服务器和客户端上的属性,但其他用户不应该在他们的客户端上看到。
实现这一点的最佳方法/框架是什么?
我正在考虑在 Meteor 中构建我的下一个应用程序。除其他外,我的数据模型将包含要传递给客户端的对象,但其内容需要在推送之前动态过滤。
例子:
var obj = {
name: "John",
secret: "A very shy guy"
}
我希望能够secret
为“管理员”用户访问服务器和客户端上的属性,但其他用户不应该在他们的客户端上看到。
实现这一点的最佳方法/框架是什么?
将流星发布功能与您的收藏一起使用,您可以使用排除或包含:
服务器端 JS排除:
Meteor.publish("mycollection", function () {
return mycollection.find({}, {fields: {secretInfo: 0}});
});
服务器端 JS包含:
Meteor.publish("mycollection", function () {
return mycollection.find({}, {fields: {name: 1}});
});
然后在您的客户端上订阅此发布:
客户端js
Meteor.subscribe("mycollection");
有关流星文档中发布功能的更多信息:http: //docs.meteor.com/#meteor_publish
还可以查看当事方示例(带截屏视频): http: //meteor.com/examples/parties