在铁路由器中设置属于用户的数据

时间:2015-05-20 06:31:12

标签: meteor iron-router

ArrayList<String> puzzleListY;
ArrayList<String> puzzleListX;
public WordPuzzleGenerator(int size) throws FileNotFoundException {
    puzzleListY = new ArrayList<String>();
    puzzleListX = new ArrayList<String>();
    ...
}

它在浏览器中显示错误:

  

未捕获的TypeError:无法读取未定义的属性“_id”

有关如何获取已登录用户的设置记录的任何建议吗?

1 个答案:

答案 0 :(得分:3)

流星登录过程通常需要几毫秒才能准备好,同时Meteor.user()将返回undefined并且首次执行路由data方法将失败。

您可以使用Meteor.userId()来避免这种情况发生,直到用户真实连接为止。

Router.route('/settings', {
  name: 'settings',
  data: function() {
    return Settings.findOne({
      userId: Meteor.userId()
    });
  }
});