2015-10-01 2 views
0

У меня есть приложение на основе koa, где я хочу писать данные в nedb. Проблема показана в следующем кратком фрагменте.Выход изнутри обратного вызова nedb

app.use(router.get('/', function*(){ 
    db.insert(doc, function(err,data){ 
    // can't yield here because the callback is not a generator 
    } 
})); 

Я попытался следующие с thunkify согласно документации на https://github.com/tj/node-thunkify:

var insert = thunkify(db.insert); 
app.use(router.get('/', function*(){ 
    yield insert(doc) 
})) 

, но я получаю следующее сообщение об ошибке

TypeError: Cannot read property 'push' of undefined 
    at Datastore.insert (/home/app/node_modules/nedb/lib/datastore.js:374:16) 
    at Object.<anonymous> (/home/app/node_modules/thunkify/index.js:43:12) 
    at /home/app/node_modules/koa/node_modules/co/index.js:136:8 
    at Object.thunkToPromise (/home/app/node_modules/koa/node_modules/co/index.js:13 

Любая помощь будет принята с благодарностью.

ответ