javascript - Browserify - 提及同一文件中的函数

标签 javascript browserify

我正在使用 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/

相关文章:

javascript - Browserify 错误 : Parsing file, 意外的 token

javascript - 访问嵌套事件绑定(bind) JavaScript 中的对象

javascript - 设置表列等长

javascript - 以编程方式使用时出现 Babelify sourceType 错误

javascript - Browserify - 全局变量

node.js - Node 脚本 : Chaining commands with watchify

javascript - 如何将 "this"上下文传递给匿名函数

javascript - 当键与另一个数组匹配时更新关联数组中的值

javascript - 从链接中删除所有目标 ="_blank"

javascript - Browserify 使用我系统中文件夹的路径