【发布时间】:2018-03-04 08:23:41
【问题描述】:
我有一个带有表单的网页,用户可以在其中编辑个人信息、教育、工作经历等。 并且用户可以添加多个学位,例如:bs、ms、phd。还有一些工作职位。
当用户按下“保存”按钮时,我会将所有这些数据发送到我的服务器。我在一个请求中发送所有内容。在服务器中,我有一点要处理请求。
app.post(config.version + '/profile', (req, res, next) => {});
然后我做了一些 MySQL 查询来插入/更新/删除数据。我使用来自 npm 的 mysql 包来做到这一点。
new Promise((resolve, reject) => {
const userQuery = `INSERT INTO user ...;`;
const degreesQuery = 'INSERT INTO degree ...;';
const positionsQuery = 'UPDATE position SET ...;';
this.connection.query(userQuery, err => {});
this.connection.query(degreesQuery, err => {});
this.connection.query(positionsQuery, err => {});
resolve({});
})
最后我做了resolve({}),但我想选择更新的配置文件并将其发回(因为在 MySQL 表中我添加了有助于我不再插入重复数据的 ID)。所以,我的问题是只有当我所有的异步 this.connection.querys 完成后,resolve({}) 怎么办?
【问题讨论】:
-
如果您需要特定的代码帮助,您需要在问题中准确添加您正在使用的数据库模块,因为人们需要知道该接口以及它是否支持使用 Promise 来跟踪异步结果。
-
@jfriend00 对不起,你说得对。我更新了问题
标签: mysql node.js rest architecture