Mernstack是一种全栈开发技术栈,由MongoDB、Express.js、React和Node.js组成。它允许开发人员使用JavaScript语言在前端和后端开发中实现一致性。
要在React上创建评论后立即重新加载评论,可以按照以下步骤进行操作:
以下是一个示例代码,演示如何在React上创建评论后立即重新加载评论:
import React, { useState, useEffect } from 'react';
const CommentList = () => {
const [comments, setComments] = useState([]);
useEffect(() => {
// 在组件加载时从后端获取评论数据
fetch('/api/comments')
.then(response => response.json())
.then(data => setComments(data));
}, []);
const handleSubmitComment = (comment) => {
// 将评论数据发送到后端
fetch('/api/comments', {
method: 'POST',
body: JSON.stringify(comment),
headers: {
'Content-Type': 'application/json'
}
})
.then(response => response.json())
.then(data => {
// 更新评论列表的状态
setComments([...comments, data]);
});
};
return (
<div>
<h2>评论列表</h2>
{comments.map(comment => (
<div key={comment.id}>
<p>{comment.text}</p>
<p>作者:{comment.author}</p>
</div>
))}
<CommentForm onSubmit={handleSubmitComment} />
</div>
);
};
const CommentForm = ({ onSubmit }) => {
const [text, setText] = useState('');
const [author, setAuthor] = useState('');
const handleSubmit = (e) => {
e.preventDefault();
// 构建评论对象
const comment = { text, author };
// 调用父组件传递的提交评论的方法
onSubmit(comment);
// 清空表单
setText('');
setAuthor('');
};
return (
<form onSubmit={handleSubmit}>
<h3>发表评论</h3>
<div>
<label>评论内容:</label>
<textarea value={text} onChange={e => setText(e.target.value)} />
</div>
<div>
<label>作者:</label>
<input type="text" value={author} onChange={e => setAuthor(e.target.value)} />
</div>
<button type="submit">提交</button>
</form>
);
};
export default CommentList;
这只是一个简单的示例,实际应用中可能需要根据具体情况进行修改和扩展。同时,你可以根据具体需求选择合适的腾讯云产品来支持你的Mernstack应用,例如使用腾讯云的云服务器、云数据库MongoDB版、云函数等。具体产品选择和介绍可以参考腾讯云官方文档。
没有搜到相关的沙龙
领取专属 10元无门槛券
手把手带您无忧上云