NodeJS - RethinkDB:​​无法读取属性' id'为null

时间:2017-04-18 18:10:58

标签: javascript node.js rethinkdb

我创建了这个项目:https://codeforgeek.com/2016/03/building-real-time-polling-app-rethinkdb-nodejs/

现在我插入了一个通过POSTMAN DELETE请求工作的删除函数,它从db数据库中删除了表,但是控制台/应用程序崩溃了,我在控制台中得到了这个:

enter image description here

TypeError:无法读取属性' id'为null

当我再次启动应用程序时(节点app.js)。问题/表格已删除!问题是崩溃。

这是feeds.js,它表示错误是:

var rethinkdb = require('rethinkdb');
var db = require('./db');
var pollObject = new db();
module.exports = function(socket) {
  pollObject.connectToDb(function(err,connection) {
  if(err) {
    return callback(true,"Error connecting to database");
  }
  rethinkdb.table('poll').changes().run(connection,function(err,cursor) {
    if(err) {
      console.log(err);
    }
    cursor.each(function(err,row) {
      console.log(JSON.stringify(row));
      if(Object.keys(row).length > 0) {
        socket.broadcast.emit("changeFeed",{"id" : row.new_val.id,"polls" : row.new_val.polls});
      }
    });
  });
  });
};

1 个答案:

答案 0 :(得分:0)

可能是你的

socket.broadcast.emit("changeFeed",{"id" : row.new_val.id,"polls" : row.new_val.polls});

正在尝试从不再存在(即已删除)的对象中获取ID。

尝试更改该行以说出其他内容。