Node / Feathers后面有一个数据库

时间:2015-12-10 15:06:41

标签: javascript node.js feathersjs

我正在学习工作中的节点和羽毛。需要制作一个简单的应用程序,使用羽毛加载[nedb]样本数据。

var fake = require('./fake.js');
var feathers = require('feathers-client');

var io = require('socket.io-client');
var socket = io("http://127.0.0.1:8000");
var app = feathers()
  .configure(feathers.socketio(socket));

var accountsAPIService = app.service('/api/accounts');

var dummyData = fake();

// import dummy data
for ( var i = 0; i < dummyData.accounts.length; i++) {
//  console.log(dummyData.accounts[i]);
  var params =  { query: {}};
  accountsAPIService.create(dummyData.accounts[i], params).then(function(account) {
    console.log("inserted: ", account);
  });
}
// read back inserted records
accountsAPIService.find(params, function(accounts) {
  console.log("accounts: ", accounts);
});

我只需要将数组dummyData.accounts中的项插入服务器。 当我运行脚本时,似乎没有导入任何内容。 当我读回记录时,它返回:

accounts:  null

使用Feathers插入/创建记录的正确方法是什么?

1 个答案:

答案 0 :(得分:0)

无法弄清楚如何使用“.then”所以使用常规形式:

for ( var i = 0; i < dummyData.accounts.length; i++) {
  var params =  { query: {}};
  accountsAPIService.create(dummyData.accounts[i], params, function(error, account) {
//    console.log("inserted: ", account);
  });
}

工作正常。 为了读回数据,我更正了方法签名。然后,它的工作原理。 :)

accountsAPIService.find(function(error, accounts) {
  console.log("accounts: ", accounts);
});