javascript - 我们可以在 Axios 中做一个 If - ReactJS
问题描述
我写这篇文章是因为我想知道是否可以if
在 axios 中做一个。基本上我试图只发送带有 axios 内容的变量。
我有一个像这样的全球代码:
async handleSubmit(event) {
this.setState({ loading: true });
setTimeout(() => {
this.setState({ loading: false });
}, 2000);
event.preventDefault();
const {
name_contact='', name_contact1='', endfr='', endfr_1='',
} = this.state;
const name = [name_contact, name_contact1].filter(v =>v).join(',');
const end = [name_contact, name_contact1].filter(v =>v).join(',');
await axios.post(
' MY_endpoint API',
{
name, end
})
}
例如,如果name_contact
和name_contact1
为空,我将name=""
使用我的 axios.post 接收。但是我试图删除名称或结束,如果它们是空的 axios.post 只发送有用的东西而不是完全空的变量。
所以我告诉自己,我可以做一个if
in axios 来检查一个变量的内容,如果有内容就发送它。
解决方案
它与axios无关。只需有条件地将项目添加到数据对象:
await axios.post(
' MY_endpoint API',
{
...(name && { name }),
...(end && { end })
})
}
lodash 也可以在这里为您提供帮助:
await axios.post(
' MY_endpoint API',
_.pickBy({
name, end
}, Boolean))
}
推荐阅读
- node.js - 在 node.js 中,为什么我的数据在使用 Promise 读取异步文件后没有传回
- apache-spark - Spark-cassandra-connector 如何确定在 Cassandra 上查询的范围?
- docker - docker images alpine3.14 compile nginx 1.21.1 报错,但是docker images alpine3.12 可以,为什么?
- javascript - 尽管已填充,Javascript 无法访问 Html 表单数据
- python - 使用多个数据帧时如何优化 PySpark?
- asp.net - Database.Migrate 方法
- javascript - 是否可以使用 Neo4j 实现模式建模?
- javascript - 基于 es6 在网站上绑定 dom 事件的最佳方法是什么?
- javascript - 如何根据条件将查询链接到 mongoDB 数据库(mongoose)
- javascript - React 和 Django - 将 Note 模型与特定用户连接