
这样,在 handlesubmit 函数中就可以访问到当前 job 的 item 对象。
修改 handleSubmit 函数
接下来,修改 handleSubmit 函数,使其接收 item 作为参数,并从中提取 id 值添加到 Payload 中。
const handleSubmit = (e, item) => {
e.preventDefault();
const payload = {
jobId: item.id, // 将 item.id 添加到 payload 中
comment: textareaValue,
user: currentUser.id,
};
console.log(payload);
// 在这里添加发送 Payload 到后端的代码
};在上述代码中,item 对象包含了当前 Job 的所有信息,包括 id。通过 item.id 可以获取到当前 Job 的 ID,并将其添加到 Payload 中,键名为 jobId。请根据你的后端 API 设计修改键名。
注意事项
完整代码示例
import React, { useState } from 'react';
import { Form, InputGroup, Image } from 'react-bootstrap';
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
import { faPaperPlane } from '@fortawesome/free-solid-svg-icons';
const JobCommentForm = ({ item, currentUser, asset, time }) => {
const [textareaValue, setTextareaValue] = useState('');
const handleTextareaChange = (e) => {
setTextareaValue(e.target.value);
};
const handleSubmit = (e, item) => {
e.preventDefault();
const payload = {
jobId: item.id,
comment: textareaValue,
user: currentUser.id,
};
console.log(payload);
// 在这里添加发送 Payload 到后端的代码
};
return (
<Form onSubmit={(e) => handleSubmit(e, item)} type="submit">
<InputGroup className="mb-3 comment-sect">
<InputGroup.Text id="inputGroup-sizing-default">
<Image src={asset('small', currentUser.profil_picture)} rounded className="profil-comment" />
</InputGroup.Text>
<Form.Control
as="textarea"
rows={1}
onChange={handleTextareaChange}
aria-label="Default"
aria-describedby="inputGroup-sizing-default"
/>
<div
className={`comment-send-container ${textareaValue.trim() !== '' ? 'active-icon' : 'disable-icon'}`}
onClick={(e) => handleSubmit(e, item)} // 确保点击事件也传递 item
>
<FontAwesomeIcon icon={faPaperPlane} className="comment-send-icon" />
</div>
</InputGroup>
</Form>
);
};
export default JobCommentForm;总结
通过将 item 对象传递给 handleSubmit 函数,可以方便地获取到当前 Job 的 id,并将其添加到 Payload 中。确保在循环中正确传递 item 对象,并根据你的后端 API 设计修改 Payload 的结构。最后,添加发送 Payload 到后端 API 的代码,以保存评论。
以上就是如何在循环中传递 job.id 到 Payload 以存储评论的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号