下面的怎么改成if的形式,因为有一个条件下我要处理多个逻辑所以下面的写法没办法实现?
const res =addEditType.value === 'add'
? await addUserApi(data).catch(() => {})
: await editUserApi(formData)
下面的怎么改成if的形式,因为有一个条件下我要处理多个逻辑所以下面的写法没办法实现?
const res =addEditType.value === 'add'
? await addUserApi(data).catch(() => {})
: await editUserApi(formData)
要将给定的 JavaScript 代码从三元运算符的形式转换为 if
语句形式,可以按照以下方式编写:
if (addEditType.value === 'add') {
try {
const result = await addUserApi(data);
// 在这里处理 addUserApi 的结果
} catch (error) {
// 在这里处理 addUserApi 的错误
}
} else {
try {
const result = await editUserApi(formData);
// 在这里处理 editUserApi 的结果
} catch (error) {
// 在这里处理 editUserApi 的错误
}
}
在上面的代码中,我们使用 if
语句来检查 addEditType.value
是否等于 'add'
。如果是,则执行 addUserApi(data)
的逻辑,并在 try
块中处理其结果。如果发生错误,catch
块将捕获并处理该错误。
如果 addEditType.value
不等于 'add'
,则执行 editUserApi(formData)
的逻辑,并在 try
块中处理其结果。同样地,如果发生错误,catch
块将捕获并处理该错误。
通过这种方式,你可以在 if
语句中实现与原始代码相同的逻辑,并根据需要处理多个逻辑分支。
?号前的是判断语句,?与:之间的是条件为真时的逻辑,:后的是条件为假时的逻辑
if(addEditType.value === 'add')
{ await addUserApi(data).catch(() => {}) }
else{ await editUserApi(formData) }
let request = addEditType.value === 'add' ? addUserApi : editUserApi;
let params = addEditType.value === 'add' ? data : formData;
await request(params)
如果你的新增跟修改维护的是一个表单数据,那么更简单
let request = addEditType.value === 'add' ? addUserApi : editUserApi;
await request(formData)
// 定义方法
const save = async(addEditType)=>{
if(addEditType.value === 'add'){
return await addUserApi(data).catch(() => {})
} else {
return await editUserApi(formData)
}
}
//调用方法
const res = await save(addEditType.value)
10 回答11.3k 阅读
5 回答4.9k 阅读✓ 已解决
4 回答3.2k 阅读✓ 已解决
2 回答2.8k 阅读✓ 已解决
3 回答2.4k 阅读✓ 已解决
3 回答2.2k 阅读✓ 已解决
2 回答2.7k 阅读✓ 已解决