假设我有一个函数,它返回客户端java脚本文件中播放器的特定id:
var playerId = function () {
return Player.findOne({current:true})._id;
};
然而,随着项目的发展,我已经开始将我的代码分解为各种.js文件(player.js,game.js,round.js等)。当我想重用时,问题出现了。功能。我不能从另一个.js文件中调用playerId()函数。到目前为止,我只是将函数复制并粘贴到每个使用它的.js文件中。有没有我可以定义函数的地方,以便它可用于每个.js文件?
答案 0 :(得分:3)
正确的答案就是删除要导出的变量的声明语句中的var。 http://docs.meteor.com/#namespacing
另外,请遵循以下规则确保加载顺序正确:http://docs.meteor.com/#structuringyourapp
答案 1 :(得分:0)
您可以使用其他文件中的.js名称来调用该函数
例如:
player.js
var player = {
init: function() {
player.playerId();
},
playerId : function () {
return Player.findOne({current:true})._id;
}
}
$(document).ready(function () {
player.init();
});
game.js
game: function(){
var p = player.playerId()
}
答案 2 :(得分:0)
除了提供修复文件依赖性的明显提示之外,我可以给出的最佳建议是使用名为Require JS的优秀库。这不仅会自动处理文件依赖顺序和下载,还会使您的全局范围保持清洁这些类型的实用程序功能。要求也会迫使你进入更好的编程习惯,这就是为什么我提倡学习/使用require来解决你的问题。