我有一个从Redis商店删除元素的函数:
function removeDevice(identificator, callback){
client.srem('devices', identificator, function(err) {
callback(true);
});
}
我称之为:
removeDevice(function (data) {
res.json(data);
});
它给了我错误:
TypeError:回调不是该行的函数:
callback(true);
答案 0 :(得分:3)
您传递的功能是第一个参数(identificator
),而不是第二个(callback
):
这里只有一个论点:
removeDevice(function (data) {
res.json(data);
});
对于第二个参数的回调,必须在它前面有一个:
removeDevice(somethingHere, function (data) {
// ^^^^^^^^^^^^^^^
res.json(data);
});
答案 1 :(得分:1)
您的函数需要2个参数。
function removeDevice(identificator, callback){
但是,您只传递了1个参数,因此identificator
保存传递的函数值