我定义了一个模块(为了代码易于阅读,我删除了一些不必要的行...)
下面是我的 game.js
define(['util'], function (util) {
return {
createNew : function (setting) {
var game = {
intervalTrigger : function () {
return window.setInterval(function () {
score++;//how to read deal with this value?
}, 1000);
}
}
};
return game;
}
};
});
并用于 app.js
:
require.config({
baseUrl: "./src",
});
requirejs(['util', 'game'],
function (util,game) {
var score = 0;
function startgame(level) {
var setting = {};
var g = game.createNew();
g.intervalTrigger();
}
startgame(0);
});
就我而言,我需要 createNew
为数不多的几次,所以分数不能存储在模块中。
那么如何访问 score
在模块中 game
?
你需要定义 score
作为一个实际的模块。比如说。
define([], function() {
var gameStats = {
score: 0
};
return gameStats;
});
现在你只需要在任何你需要使用游戏统计的地方注入:
创建一个getset函数并在game.js中公开。
define(['util'], function (util) {
var score = 0;
return {
createNew : function (setting) {
var game = {
intervalTrigger : function () {
return window.setInterval(function () {
score++;//how to read deal with this value?
}, 1000);
}
getScore: function(){ return score;} //getting the score
setScore: function(value){score = value;} //setting the score
}
};
return game;
}
};
});
现在你可以在这里使用:
require.config({
baseUrl: "./src",
});
requirejs(['util', 'game'],
function (util,game) {
var score = 0;
function startgame(level) {
var setting = {};
var g = game.createNew();
g.setScore(score); //setting the score
g.intervalTrigger();
}
startgame(0);
});