Node.js 记账本项目总结

在使用Node.js结合Express框架构建记账本的过程中,遇到了一些常见的问题,这些问题主要集中在路径处理、包管理工具的选择、开发环境优化以及HTTP响应处理等方面。以下是对此进行 具体的总结与问题分析:

绝对路径与相对路径

  • 绝对路径 :指从根目录开始的完整路径,如/web。在Web开发中,使用绝对路径可以避免因文件位置改变而引起的路径错误。

  • 相对路径:相对于当前文件的位置来确定目标文件的位置,例如:

    • ./css/app.css:表示从当前文件所在的目录下寻找css文件夹内的app.css文件。
    • ../app.css:表示上一级目录下的app.css文件。
开发环境优化

为了提高开发效率,我们采用了以下措施:

  • 更换NPM镜像源 :使用nrm工具切换至淘宝镜像源,加速依赖包的下载速度。

    复制代码
    npm i -g nrm
    nrm use taobao
  • 使用Yarn :Yarn是一个快速、可靠且安全的依赖管理工具,可以通过yarn config list命令检查配置是否生效。

  • 使用Nodemon :安装并使用nodemon替代默认的node命令,实现代码更改后的自动重启功能。

    复制代码
    npm install -g nodemon

HTTP响应处理

在处理HTTP响应时,正确的使用res.send()方法非常重要。该方法用于向客户端发送响应,如果参数不正确,则可能导致错误。例如,尝试将字符串'success'作为状态码传递是不正确的。正确的做法应该是先设置状态码,然后再发送响应体,如:

复制代码
res.status(200).send({ msg: '添加成功!' });

此外,在创建新的记账记录后,通常会重定向到列表页以展示最新的记录列表,这可以通过res.redirect()方法实现:

复制代码
router.post('/account', (req, res) => {
  const newRecord = req.body;
  db.get('accounts').push(newRecord).write();
  res.redirect('/account/list'); // 重定向到列表页
});

路由处理函数

  • 列表页(list) :从数据库中查询所有记账记录,并将这些数据传递给模板引擎进行渲染。
  • 创建页(create) :处理用户的表单提交,将新的记账记录保存至数据库,并重定向回列表页。
  • 成功页(success) :实际上,在成功添加记录后,建议直接重定向到列表页,而非单独显示一个成功页面,以保持用户体验的一致性。
相关推荐
摘星小杨23 分钟前
如何卸载本机的node.js
node.js
Q_Q5110082859 小时前
python的保险业务管理与数据分析系统
开发语言·spring boot·python·django·flask·node.js·php
摘星小杨21 小时前
安装nvm管理node.js,详细安装使用教程和详细命令
node.js·nvm
灋✘逞_兇1 天前
Node.Js是什么?
服务器·javascript·node.js
归于尽1 天前
回调函数在Node.js中是怎么执行的?
前端·javascript·node.js
GDAL1 天前
多字节字符的字节被拆分到不同 chunk 中,导致解码失败
node.js
Jacob02341 天前
“Node.js 不行了”?性能争议中的误解与选择真相
后端·node.js
全宝1 天前
前端也能这么丝滑!Node + Vue3 实现 SSE 流式文本输出全流程
前端·javascript·node.js
天天进步20152 天前
前端工程化:Webpack从入门到精通
前端·webpack·node.js
实习生小黄2 天前
express 连接在线数据库踩坑
node.js·express