无法将我的数据推送到 json 服务器
Not able to push my data in an json server
这是一个本地 JSON 服务器,您可以在此 URL 上看到
http://localhost:3003/CourseList/1
我的钩子
const [subjectName,setsubjectName]=useState(
{
id: "",
subjectname: "Aptitude",
chapter: [
{
chapter1: "",
topic: [
{
topic1: ""
}
]
}
]
}
);
当我点击添加按钮时会检查它是否与道具的 ID 匹配然后它会执行任务
const addSubject = async id => {
console.log("id "+id);
axios.get(`http://localhost:3003/CourseList/`)
.then((res)=>{
res.data.map((list,index)=>{
if(list.id===props.id){
console.log(list.subject)
list.subject.push(subjectName);
}
})
})
.catch((error)=>{
console.log(error);
})
};
如何在主题数组中推送新数据?我一无所获
如果您使用的是 JSON-server,它应该有一个用于 PATH/PUT
您的新 object 的默认端点。您需要在您的请求 header 中发送 Content/Type: application/json
并在您的服务器中设置 jsonServer.bodyParser
。
这是解决方案
const addSubject = async id => {
console.log("id"+id);
try{
const {data} = await axios.get("http://localhost:3003/CourseList")
data.map(async(item)=>{
if(item.id===id){
console.log(item);
item.subject.push(subjectName);
await axios.put(`http://localhost:3003/CourseList/${id}`,item)
}
})
const check= await axios.get(http://localhost:3003/CourseList/${id})
console.log(check)
}catch(err){
console.log(err.message)
}
};
这是一个本地 JSON 服务器,您可以在此 URL 上看到 http://localhost:3003/CourseList/1 我的钩子
const [subjectName,setsubjectName]=useState(
{
id: "",
subjectname: "Aptitude",
chapter: [
{
chapter1: "",
topic: [
{
topic1: ""
}
]
}
]
}
);
当我点击添加按钮时会检查它是否与道具的 ID 匹配然后它会执行任务
const addSubject = async id => {
console.log("id "+id);
axios.get(`http://localhost:3003/CourseList/`)
.then((res)=>{
res.data.map((list,index)=>{
if(list.id===props.id){
console.log(list.subject)
list.subject.push(subjectName);
}
})
})
.catch((error)=>{
console.log(error);
})
};
如何在主题数组中推送新数据?我一无所获
如果您使用的是 JSON-server,它应该有一个用于 PATH/PUT
您的新 object 的默认端点。您需要在您的请求 header 中发送 Content/Type: application/json
并在您的服务器中设置 jsonServer.bodyParser
。
这是解决方案
const addSubject = async id => { console.log("id"+id);
try{
const {data} = await axios.get("http://localhost:3003/CourseList")
data.map(async(item)=>{
if(item.id===id){
console.log(item);
item.subject.push(subjectName);
await axios.put(`http://localhost:3003/CourseList/${id}`,item)
}
})
const check= await axios.get(http://localhost:3003/CourseList/${id})
console.log(check)
}catch(err){
console.log(err.message)
}
};