当我试图在'sessions'上执行一些程序时。我已经创建了一个名为"排行榜"的项目。
执行这个排行榜显示一些"未定义"的控制台日志。知道为什么吗?
下面是我的代码:PlayerList = new Mongo.Collection('players');
if (Meteor.isClient) {
Template.leaderboard.helpers({
'player': function() {
return PlayerList.find()
},
});
Template.leaderboard.events({
'click .player': function() {
var playerId = this._id;
Session.set('selectedPalyer', playerId);
var selectedPlayer = Session.get('selectedPlayer');
console.log(selectedPlayer);
}
});
}
<head>
<title>Leaderboard</title>
</head>
<body>
<h1>Leaderboard</h1>
{{> leaderboard}}
</body>
<template name="leaderboard">
<ul>
{{#each player}}
<li class="player">{{name}}: {{score}}</li>
{{/each}}
</ul>
</template>
您的Session
键有一个错别字。只需将Session.set('selectedPalyer', playerId);
替换为Session.set('selectedPlayer', playerId);
,您就可以开始了:
PlayerList = new Mongo.Collection('players');
if (Meteor.isClient) {
Template.leaderboard.helpers({
'player': function () {
return PlayerList.find();
}
});
Template.leaderboard.events({
'click .player': function () {
var playerId = this._id;
Session.set('selectedPlayer', playerId);
var selectedPlayer = Session.get('selectedPlayer');
console.log(selectedPlayer);
}
});
}