Javascript成功和失败回调都被调用(是否需要在每次回调后添加“return”)

Javascript成功和失败回调都被调用(是否需要在每次回调后添加“return”),javascript,cordova,dom-events,Javascript,Cordova,Dom Events,使用Cordova/Jasmine测试框架指出,我的成功和失败回调都会被解雇 为了解决这个问题,我在每次回调后都添加了一个return语句。这是最好的方法吗 Connect : function(macAddress,success,failure) { if(!this.IsEnabled()){ failure("Bluetooth Not Enabled"); return; } this.CordovaBTObject.conne

使用Cordova/Jasmine测试框架指出,我的成功和失败回调都会被解雇

为了解决这个问题,我在每次回调后都添加了一个return语句。这是最好的方法吗

Connect : function(macAddress,success,failure) {
    if(!this.IsEnabled()){
        failure("Bluetooth Not Enabled");
        return;
    }

    this.CordovaBTObject.connect(
        macAddress,
        function(){
            success();
            return;
        },
        function(){
            failure("Could not connect to BT device");
            return;
        }
    );
}

您是否尝试过遍历您的代码?假设您使用的是一个模拟器,可能在调用时进行日志记录,它总是帮助我发现相对简单的问题,我实际上已经浏览了代码。我正在重做Cordova蓝牙插件,目的是添加单元测试并将UI与之分离。为此,我注入了Cordova Bluetooth插件对象,使其更易于测试。我发现当我点击这个特定的测试时,Jasmine正在运行多个测试。(感觉在下一次测试之前没有发生分解位。)在代码中显示的成功和失败处理程序中的
return
语句是完全可选的,并且根本不会更改操作。@BertusKruger那么您已经有了答案,可以显示其余的代码吗?特别是你正在启动和测试JSThank@konkked。。。是我撕掉了一点测试,没有完全清除我注入的模拟/科尔多瓦对象。一旦我修好了,一切都开始工作了。