Post ReactJs 中的条件数据
Post Conditional Data in ReactJs
所以我想在 React 的 POST 方法函数中添加条件语句。我有一个名为 empType 的 useState 变量,可以通过按钮将其切换为“正常”或“其他”。如果 empType 设置为正常,我希望能够从将发布的 JSON 数据中排除 data2。我尝试使用 {empType !== "normal" && data2: "something"}
但显然是语法错误。
这是我的代码
export default function App() {
const [empType, setEmpType] = useState("blank");
const onSubmit = () => {
fetch(`/apiendpoint`, {
method: "POST",
headers: { "Content-type": "application/json; charset=UTF-8" },
body: JSON.stringify({
data1: "something",
data2: "something"
})
})
.then((response) => response.json())
.then((message) => console.log(message))
.catch((error) => {
console.log(error);
});
};
return (
<div className="App">
<button onClick={() => setEmpType("normal")}>
set Emp type to normal
</button>
<br />
<button onClick={() => setEmpType("others")}>
set Emp type to others
</button>
<br />
Emp Type = {empType}
<br />
<button onClick={onSubmit}>submit</button>
</div>
);
}
非常感谢任何帮助。谢谢
为什么不尝试在获取调用之前构建数据。
const onSubmit = () => {
const data = {
data1: "something"
}
if (empType !== "normal") data.data2 = "something"
fetch(`/apiendpoint`, {
method: "POST",
headers: { "Content-type": "application/json; charset=UTF-8" },
body: JSON.stringify(data)
})
.then((response) => response.json())
.then((message) => console.log(message))
.catch((error) => {
console.log(error);
});
};
所以我想在 React 的 POST 方法函数中添加条件语句。我有一个名为 empType 的 useState 变量,可以通过按钮将其切换为“正常”或“其他”。如果 empType 设置为正常,我希望能够从将发布的 JSON 数据中排除 data2。我尝试使用 {empType !== "normal" && data2: "something"}
但显然是语法错误。
这是我的代码
export default function App() {
const [empType, setEmpType] = useState("blank");
const onSubmit = () => {
fetch(`/apiendpoint`, {
method: "POST",
headers: { "Content-type": "application/json; charset=UTF-8" },
body: JSON.stringify({
data1: "something",
data2: "something"
})
})
.then((response) => response.json())
.then((message) => console.log(message))
.catch((error) => {
console.log(error);
});
};
return (
<div className="App">
<button onClick={() => setEmpType("normal")}>
set Emp type to normal
</button>
<br />
<button onClick={() => setEmpType("others")}>
set Emp type to others
</button>
<br />
Emp Type = {empType}
<br />
<button onClick={onSubmit}>submit</button>
</div>
);
}
非常感谢任何帮助。谢谢
为什么不尝试在获取调用之前构建数据。
const onSubmit = () => {
const data = {
data1: "something"
}
if (empType !== "normal") data.data2 = "something"
fetch(`/apiendpoint`, {
method: "POST",
headers: { "Content-type": "application/json; charset=UTF-8" },
body: JSON.stringify(data)
})
.then((response) => response.json())
.then((message) => console.log(message))
.catch((error) => {
console.log(error);
});
};