[英]TypeError: callback is not a function -
我有這段代碼是Pipl api包裝器的一部分,並且出現此錯誤:
該主代碼執行get請求,並從API返回信息
期待得到您的幫助:)
return callback(err, JSON.parse(body) || body);
TypeError: callback is not a function
怎么了 我該如何解決這個錯誤?
(function() {
var _ = require('lodash')
, request = require('request')
, util = require('util')
, url = require('url');
var Handler = function(subClass) {
this.createCall = function(method, path, options, callback) {
return function(config) {
if (_.isFunction(options)) {
callback = options;
options = {};
}
path = url.format({
pathname: path,
query: options
});
path = url.resolve(config.api_url, path);
console.log(path)
var parameters = {
url: path,
method: method
};
request(parameters, function(err, response, body) {
return callback(err, JSON.parse(body) || body);
});
}
};
_.merge(subClass, this);
return this;
}.bind(this);
module.exports = Handler;
}).call(this);
調用createCall
函數時,應將4個參數傳遞給它,最后一個參數應該是一個函數(稍后將被調用)。 它看起來像行callback = options;
沒有多大意義。
發生此問題是因為search.query
函數接受選項和回調。 但是在NPM文檔中,它說它接受type, options, callback
檢查github
此錯誤表示您嘗試將某項功能稱為功能而不是功能。 在您的情況下,問題在於您只發送了一個參數,即“文件路徑”,而沒有傳遞要調用的函數。
我猜想在this.xmlObjectRepositoryLoader(filePath)中傳遞回調(map)可能會解決您的錯誤
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.