gpt4 book ai didi

javascript - 更新返回错误

转载 作者:行者123 更新时间:2023-11-28 06:02:21 25 4
gpt4 key购买 nike

我从客户端调用 updateUser:

Meteor.call('updateUser', userObject, function (error, result) {
console.log(error, result);

if (error) {
Meteor._debug("updateUser", "Failed to update user: " + error);
}
});

客户端返回:“未定义0”

在服务器和客户端上运行:

Meteor.methods({
updateUser: function (userObject) {
User.update({ _id: userObject._id }, { $set: userObject }, function (error, result) {
console.log(error, result);

if (error) {
if (this.isSimulation) {
console.log(error);
} else {
throw new Meteor.Error("updateUser", "failed to update user");
}
}
});
}
});

服务器返回:“notUnique”错误

客户端返回:“undefined undefined”

如何从服务器将此错误返回到调用 Meteor 方法 updateUser 的客户端?我需要错误才能知道发生了哪种类型的错误。

最佳答案

看起来你必须使用 futures 或 Promise,因为它是异步的

function attemptUpdate(userObject) {
return new Promise((resolve, reject) => {
User.update({ _id: userObject._id }, { $set: userObject }, function (error, result) {
console.log(error, result);

if (error) {
if (this.isSimulation) {
console.log(error);
resolve(result);
} else {
reject(Meteor.Error("updateUser", "failed to update user"));
}
}
});
});
}

Meteor.methods({
async updateUser(userObject) {
await attemptUpdate.call(this, userObject);
}
});

关于javascript - 更新返回错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37181842/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com