0
我有一個node.js應用程序使用async一個接一個地調用方法。出於某種原因,當我嘗試去瀑布的第二層,我的應用程序將引發以下錯誤:「對象不是函數」錯誤?
TypeError: object is not a function
我有下面的代碼是CoffeeScript的(如果有人想它,我可以得到的JavaScript):
async.waterfall([
(callback) =>
console.log 'call getSurveyTitle'
@getSurveyTitle (surveyTitle) =>
fileName = 'Results_' + surveyTitle + '_' + dateString + '.csv'
filePath = path.resolve process.env.PWD, 'static', @tempDir, fileName
csv.to(fs.createWriteStream(filePath))
callback(null, null)
,
(callback) =>
@createHeaderRow (headerRow) =>
headerText = _.map headerRow, (row) =>
row.text
csv.write headerText
console.log 'before' #gets here and then throws error
callback(null,headerRow)
,
(headerRow, callback) =>
console.log 'after'
@createRows headerRow, (callback) =>
callback(null,null)
], (err, result) =>
console.log "waterfall done!"
)
對節點和異步我還是比較新的,所以我有一種感覺,我只是忽略了一些明顯的東西。任何人都可以看到我在做什麼,可能會導致此錯誤?
真棒謝謝你!那麼發生的事情是,第二層是否收到一個空參數,什麼時候它根本沒有收到任何參數? – 2013-03-05 17:43:18
@AbeMiessler那麼,「*應*」取決於你。但是,是的,它收到了一個目前沒有預料到的'空'參數。 – 2013-03-05 17:45:14