async function btnsubmit () { const check = checkForm() if (!check) { return } $q.loading.show({ message: '请稍等,正在保存' }) event.submitData.MyRequestFromItemList = Object.assign({}, rows.value) let result = await store.dispatch('ESourcingModule/AddMyRequestFormData', event.submitData) $q.loading.hide() $q.notify({ message: '新建成功!', type: 'positive', position: 'center' }) void JumpToBack() } 优化代码
时间: 2024-02-14 20:10:01 浏览: 91
jQuery中$.ajax()和$.getJson()同步处理详解
同样地,这段代码也可以使用 `async/await` 和 `try/catch` 来简化异步调用和提高代码健壮性。同时,使用 `const` 声明不变的变量,以避免意外的变量修改。最后,可以把重复的代码封装成函数,以达到代码复用的目的。
下面是优化后的代码:
```
async function btnsubmit() {
const check = checkForm();
if (!check) {
return;
}
try {
$q.loading.show({
message: '请稍等,正在保存'
});
const submitData = {
MyRequestFromItemList: Object.assign({}, rows.value)
};
const result = await store.dispatch('ESourcingModule/AddMyRequestFormData', submitData);
$q.loading.hide();
$q.notify({
message: '新建成功!',
type: 'positive',
position: 'center'
});
void JumpToBack();
} catch (error) {
console.error(error);
$q.loading.hide();
$q.notify({
message: '新建失败,请重试',
type: 'negative',
position: 'center'
});
}
}
```
在优化后的代码中,使用了 `const` 声明不变的变量,以避免意外的变量修改。同时,将重复的代码封装成了 `submitData` 对象,以达到代码复用的目的。
阅读全文