javascript - 后面有数据库的 Node/羽毛

标签 javascript node.js feathersjs

我正在工作中学习 Node 和 Feathers。需要制作一个简单的应用程序,该应用程序将使用 Feather 来加载带有示例数据的 [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 插入/创建记录的正确方法是什么?

最佳答案

无法弄清楚如何使用“.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);
});

关于javascript - 后面有数据库的 Node/羽毛,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34205272/

相关文章:

javascript - jQuery 鼠标事件不触发

javascript - 如何在 AngularJS 中更新 json 文件中的数据?

java - 将图像对象数组编码为电影文件

javascript - 部署页面时 Jquery ajax 调用不起作用

Javascript:如何在回调函数中访问局部变量?

javascript - MobX + react native : way to inject stores

javascript - 如何使用javascript在json中动态添加两个键值并显示在另一个键值中

javascript - "node module wrapper function"在node中是什么意思?

javascript - 如何验证 FeathersJS 中的日期格式

javascript - 嵌套循环内上下文值未定义