Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/361.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 避免流星中收集的持久性_Javascript_Node.js_Meteor - Fatal编程技术网

Javascript 避免流星中收集的持久性

Javascript 避免流星中收集的持久性,javascript,node.js,meteor,Javascript,Node.js,Meteor,我刚刚开始研究在即将到来的项目中使用Meteor,并对数据持久性提出了一个问题。听起来您有两个选择:第一,在实例化一个新集合时,您可以声明一个“名称”,该集合将创建一个数据库集合,该数据库集合将在更改时保存 Chatrooms = new Meteor.Collection("chatrooms"); 另一个选项是创建一个匿名集合,它不会被保存 Chatrooms = new Meteor.Collection(); 但是,如果我想从数据库中填充一个集合,但不想在客户端更改时保存它,该怎么办

我刚刚开始研究在即将到来的项目中使用Meteor,并对数据持久性提出了一个问题。听起来您有两个选择:第一,在实例化一个新集合时,您可以声明一个“名称”,该集合将创建一个数据库集合,该数据库集合将在更改时保存

Chatrooms = new Meteor.Collection("chatrooms");
另一个选项是创建一个匿名集合,它不会被保存

Chatrooms = new Meteor.Collection();
但是,如果我想从数据库中填充一个集合,但不想在客户端更改时保存它,该怎么办?例如,我可能想创建一个网格中显示的用户电影集合——每个电影都有自己的绝对位置,基于应用于集合的排序和过滤。对集合进行更改后,关联的视图(或模板)将重新呈现以反映这些更改。但我不一定要把这些绝对位置存储在数据库里


有什么想法吗?

我不太清楚你的问题。但是,也许可以将绝对位置绑定到集合数据中?它们只是普通的javascript对象。收集数据只能通过函数调用来更改。

我最后做了如下操作:

movies: function() {
  var movies =  Movies.find().fetch();
  _.each(movies, function(movie, index){
    movie.left = index * 2;
    movie.top = index * 2; 
  });
  return movies; 
},
基本上,'fetch()'允许我处理纯JSON对象,这使得在不执行'update'命令的情况下更容易遍历和修改它们

谢谢--我最后做了类似的事情,除了不在集合数据上,而是在从find查询返回的游标上。