14.node 实现简单的增删改查思路

基本步骤

1. 创建目录结构

2. 创建基本服务器

- npm初始化
- 安装express
- 安装模板引擎

3. 创建前端页面

- 安装bootstrap
    (1)下载(2)配置响应node_modules文件夹
- 使用路由渲染html页面    

4.创建数据库列表,模拟数据库数据

- 创建json文件 
- 通过模板引擎将文件数据渲染到html页面
- 通过fs模块将json文件读取出来
- 解析字符串为对象并存储

5.路由设计并创建路由

请求方法 请求路径 get参数 post参数 备注
get / 主页
get /add 渲染新增页面
post /add name,tel,state,cttime 新增处理
get /edit id 渲染编辑页面
post /edit id,name,tel,state,cttime 编辑处理
get /delete id 删除处理

渲染页面使用get,处理页面使用post

6.post与get基本处理

- form表单设置action,methods(post方法)
- 查看数据:提交查看响应体数据
- 获取提交数据:使用bodyParser中间体获取视图提交的数据
- 字符串处理

添加思想:将数据提交到文件,(文件是字符串)
读取文件->将文件转换为对象->在对象中添加数据(push)->添加后将对象转化为字符串->将字符串写入文件

7.设置操作文件模式的api (创建专门处理数据库json文件的api)

此处文件指的是数据库的json数据,由于json文件已经读取过一次,当使用其他路由时,又需要读取路由,这就增加了代码的耦合,此时需要专门创建一个js文件,来处理针对json文件的 增删改查

回调函数理解

什么是异步?异步没有阻塞接下来程序的运行,同步会阻塞程序运行。alert是同步,setTimeout是异步
回调函数?如果需要获取一个函数中异步操作的结果,则必须通过回调函数(callback)来获取

关于异步的文章
https://www.cnblogs.com/learninpro/p/9166356.html
https://www.cnblogs.com/learninpro/p/9271813.html

1.json文件中查询(获取列表)

思想:将数据渲染到页面

2.处理添加

添加思想:将数据提交到文件,(文件是字符串)

步骤:读取文件->将文件转换为对象->在对象中添加数据(push)->添加后将对象转化为字符串->将字符串写入文件

注意:在回调函数中直接传入表单提交的对象参数,用于在json中文件添加操作

处理id,由于id值具有唯一性和自增性,故每次增加数据时,只需要找到原始对象中的最后一个id,增加时给id加1

        newstudents.id = studentList[studentList.length-1].id+1

3.处理更新

通过id获取到对应的列表内容->读取json文件并转化为对象->将列表内容添加到json对象->将json对象转化为字符串->将字符串写入文件

1)find方法找到要编辑的id对应列;2)遍历拷贝对象

视图层处理:1)再客户端页面中处理链接问题(需要有id参数)2)获取要编辑的id 3)渲染编辑页面

注意点: req.body,req.query,find方法,遍历拷贝对象方法,parseInt/Number转化为数字

4.处理删除

思路:通过id获取到对应的列表内容->读取文件转对象->在对象中找到要删除的id->通过数组删除方法删除对应id列->将json对象转化为字符串->将字符串写入文件

视图层处理:1)删除按钮添加id

image

posted @ 2021-12-09 15:30  禾耳  阅读(398)  评论(1)    收藏  举报