如何将Promise异步请求同步化改写为一个长尾词?

2026-04-02 02:511阅读0评论SEO教程
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计446个文字,预计阅读时间需要2分钟。

如何将Promise异步请求同步化改写为一个长尾词?

最近在编写CRMEB+OA管理系统客户列表模块时,发现有个需求,即保存客户并持续添加合同和支付记录。页面操作简单,但调接口后同步返回的数据要处理,比较繁琐。

最近在写CRMEB OA管理系统的客户列表模块有个需求,保存客户并继续添加合同和保存合同并继续添加付款记录,这个页面跳转简单,但是比较难的是调接口后拿着接口返回的数据要同步到下一个页面,这一部分当时写的时候遇到的问题主要是:保存成功后页面已经跳转到下一个,但是保存接口返的客户id在下一个页面一直打印不出来,打印值为undefined。最后想了一下就是异步和同步的问题。使用Promise完美解决。

1.Promise是一个容器,保存着某个未来才会结束的事件(异步操作)的结果。

2.Promise有三种状态:pending(进行时),fulfilled(成功)和reJect(失败),只有异步操作的结果可以改变promise的状态,一旦promise从pending状态转化为fulfilled和reJect后就不会再改变。

3.使用:

如何将Promise异步请求同步化改写为一个长尾词?

Const promise = new Promie(function (resolve,reject){
If(/* 异步操作成功*/){
resolve(value)
} else{
reject(value)
}
})

4.项目中使用

// 提交
handleConfirm() {
// 请求的时候调用Promise
return new Promise((resolve, reject) => {
this.$refs.form.validate((valid) => {
if (valid) {
const data = {
eid: this.formInfo.id
};
this.clientContractSave(data);
resolve(valid);
}
});
});
},

// 调用的方法的时候
this.$refs.contractInfo.handleConfirm().then(() => {
// 调用接口.then()
}

这样子就会把异步变成同步,在开发中如果还有疑问可以在下方留言。

本文共计446个文字,预计阅读时间需要2分钟。

如何将Promise异步请求同步化改写为一个长尾词?

最近在编写CRMEB+OA管理系统客户列表模块时,发现有个需求,即保存客户并持续添加合同和支付记录。页面操作简单,但调接口后同步返回的数据要处理,比较繁琐。

最近在写CRMEB OA管理系统的客户列表模块有个需求,保存客户并继续添加合同和保存合同并继续添加付款记录,这个页面跳转简单,但是比较难的是调接口后拿着接口返回的数据要同步到下一个页面,这一部分当时写的时候遇到的问题主要是:保存成功后页面已经跳转到下一个,但是保存接口返的客户id在下一个页面一直打印不出来,打印值为undefined。最后想了一下就是异步和同步的问题。使用Promise完美解决。

1.Promise是一个容器,保存着某个未来才会结束的事件(异步操作)的结果。

2.Promise有三种状态:pending(进行时),fulfilled(成功)和reJect(失败),只有异步操作的结果可以改变promise的状态,一旦promise从pending状态转化为fulfilled和reJect后就不会再改变。

3.使用:

如何将Promise异步请求同步化改写为一个长尾词?

Const promise = new Promie(function (resolve,reject){
If(/* 异步操作成功*/){
resolve(value)
} else{
reject(value)
}
})

4.项目中使用

// 提交
handleConfirm() {
// 请求的时候调用Promise
return new Promise((resolve, reject) => {
this.$refs.form.validate((valid) => {
if (valid) {
const data = {
eid: this.formInfo.id
};
this.clientContractSave(data);
resolve(valid);
}
});
});
},

// 调用的方法的时候
this.$refs.contractInfo.handleConfirm().then(() => {
// 调用接口.then()
}

这样子就会把异步变成同步,在开发中如果还有疑问可以在下方留言。