Javascript TypeError:无法读取属性';然后';带pg-promise插入的未定义的
我有一个简单的类,它有一个使插入数据更容易的方法。我正在使用Javascript TypeError:无法读取属性';然后';带pg-promise插入的未定义的,javascript,Javascript,我有一个简单的类,它有一个使插入数据更容易的方法。我正在使用pgpromise库与数据库对话 class C_SQL { insert_text(text) { var time_now = new Date(); return db.none( `INSERT INTO notes(\ id,\ date,\
pgpromise
库与数据库对话
class C_SQL
{
insert_text(text)
{
var time_now = new Date();
return
db.none(
`INSERT INTO notes(\
id,\
date,\
text,\
)
VALUES (\
(SELECT max(id) from notes)+1\,
'${time_now.setFullYear(time_now.getFullYear() + 1) ? time_now : ``}',\
${text}\
);`
);
}
}
我试着这样使用它:
var one = new C_SQL();
one.insert_text("inserted from a program")
.then(() => console.log("Inserted"))
.catch(err => console.log(err));
我一定是做错了什么,导致insert_text
方法不返回任何承诺。我得到以下错误:
.then(() => console.log("Inserted"))
^
TypeError: Cannot read property 'then' of undefined
...
尝试generic
db.query(…)
会产生相同的问题。然而,在我的代码的其他部分(在方法内部的类似类中),db.query(“SELECT…
按预期工作。JavaScript有一个称为的错误特性,它改变了这一点:
return
db.none(
…
);
为此:
return;
db.none(
…
);
您可以通过在return
之后不直接使用换行符来修复它,并通过在开发过程中运行linter(例如)来防止它
return db.none(
…
);
就这样,谢谢!我已经花了一个小时试着调试了。