我创建了这个项目:https://codeforgeek.com/2016/03/building-real-time-polling-app-rethinkdb-nodejs/
现在我插入了一个通过POSTMAN DELETE请求工作的删除函数,它从db数据库中删除了表,但是控制台/应用程序崩溃了,我在控制台中得到了这个:
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});
}
});
});
});
};
答案 0 :(得分:0)
可能是你的
socket.broadcast.emit("changeFeed",{"id" : row.new_val.id,"polls" : row.new_val.polls});
正在尝试从不再存在(即已删除)的对象中获取ID。
尝试更改该行以说出其他内容。