我正在使用 browserify
来执行 JavaScript,但我很难记住如何执行此操作。
var account = require('./account');
module.exports = {
start: function() {
console.log('Logging');
module.music(this, 'game-bg.mp3');
},
music: function(arg, soundfile) {
console.log('Playing music...');
if (arg.mp3) {
if(arg.mp3.paused) arg.mp3.play();
else arg.mp3.pause();
} else {
arg.mp3 = new Audio(soundfile);
arg.mp3.play();
}
}
};
当我运行它时,我得到Uncaught TypeError: module.music is not a function
并且它永远不会开始播放音乐。
我必须做什么才能使其正常工作?我尝试查找主题,但找不到提及多个功能的主题。
最佳答案
我认为,如果您想引用对象中的另一个函数(并且您没有创建类,因此没有 this
),那么分配您想要导出的内容会更清晰、更容易到一个变量,然后导出该变量。像这样:
var account = require('./account');
var player = {
start: function() {
console.log('Logging');
player.music(this, 'game-bg.mp3');
},
music: function(arg, soundfile) {
console.log('Playing music...');
if (arg.mp3) {
if(arg.mp3.paused) arg.mp3.play();
else arg.mp3.pause();
} else {
arg.mp3 = new Audio(soundfile);
arg.mp3.play();
}
}
};
module.exports = player;
关于javascript - Browserify - 提及同一文件中的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31093729/