Provider.prototype.configure = function(callback) {
var that = this;
if (that.getConfiguration() != undefined) {
return callback(null);
}
models.configuration.all({where: {name: 'provider'}}, function (error, defaultProviderConfiguration) {
if (error) {
return callback(error);
}
that.setConfiguration(defaultProviderConfiguration[0]);
return callback(null);
});
};
请帮我修复不一致的返回点。
Provider.getConfiguration()
是同步方法。
Provider.setConfiguration()
是同步方法。
models.configuration.all()
是一种异步方法。
答案 0 :(得分:1)
假设问题是您有时同步并且有时异步调用回调,您可以使用process.nextTick
推迟调用回调直到下一个事件循环滴答:
if (that.getConfiguration() != undefined) {
return process.nextTick(callback);
}
虽然我不确定你的IDE是在抱怨什么。您的IDE可能并不喜欢您如何及早拯救"返回,可以看作是一种意大利面条代码。您可以通过重写这样的函数来关闭它:
if (that.getConfiguration() != undefined) {
process.nextTick(callback);
} else {
// rest of the function
}
对于像这样的小型功能,我不确定它是不是很重要。