快速概述是使用NodeJs(我正在学习),我正在尝试重新创建一个CRUD应用程序,我使用php / mysql等,它获取用户表单信息并将其存储在一个名为“样品-data.json”。
基本上,使用NodeJs用户填写表单,前端JS获取该信息,将其传递到我设置的api路由,然后使用FS,将该信息写入sample-data.json文件等
至于我的尝试和一些代码(下面),一旦用户点击表单上的提交,下面的代码将获取该信息,并将其传递给“sampledataapi”路径。
$("#createTodoForm").submit(function(evt){
evt.preventDefault();
$.post("/sampledataapi",{
todoCompany : $("#todoTitle").val(),
thisTodoIsFor : $("#todoIsFor").val(),
todoPostedBy : $("#todoPostedBy").val(),
todoCompleted : $("#todoCompleted").val(),
todoPriority : $("#todoPriority").val(),
todoMessages : $("#todoFirstMessage").val()
}, showDataGotten );
});
保存数据后,我的sample-data.json文件最初在其中有一个空数组,然后填充信息。
因此sample-data.json来自:[]
对此(输入数据后):
[
{
"todoCompany":"sample company",
"thisTodoIsFor":"todo is for me",
"todoPostedBy":"admin",
"todoCompleted":"no",
"todoPriority":"green",
"todoMessages" : "sample message"
}
]
现在,当我这样做时,一切正常,但我遇到的问题是,我想让“todoMessages”成为一个数组。原因是因为一旦用户发布他们的数据,他们就能够从该块中删除/添加消息。
所以我需要的是,当用户提交数据时,而不是“todoMessages”是一个常规字符串,我希望它像这样
"todoMessages" : [ "sample message" ]
这样,我可以将信息输入或删除等。 我怎样才能做到这一点,当用户创建他的数据,并且数据将信息传递给route / json文件时,它会自动创建todoMessages作为数组?
修改 作为提到的评论者之一,我尝试过(在前端)
todoMessages : [$("#todoFirstMessage").val()]
然后前端读取“undefined” 后端json有这个:
"todoMessages[]":"sample message"
我已经在这一天或者三天了,我完全陷入困境。 非常感谢大家的帮助。