Nodejs之MEAN栈开发(九)---- 用户评论的增加/删除/修改
2016-08-05 09:04
573 查看
由于工作中做实时通信的项目,需要用到Nodejs做通讯转接功能,刚开始接触,很多都不懂,于是我和同事就准备去学习nodejs,结合nodejs之MEAN栈实战书籍《Getting.MEAN.with.Mongo.Express.Angular.and.Node.2015.11》,我们完成了一个小型的ReadClubing项目,结合书中讲解和步骤,我们完成了不同的功能,当然由于时间原因,还有很多不完善的地方,后续我们会继续开发。
同事负责开发的内容为:
我开发的内容为:
针对这次Nodejs之MEAN栈开发ReadClubing项目,我主要负责是标题详情页面,包括页面布局、数据展示、评论的增加/删除/修改等工作。
1、标题详情页面布局和数据展示
标题详情页操作如图:
ViewCode
最后,通过控制器中执行成功后的回调函数,通过循环找到要修改的那个评论id,根据那条id去更新对应的评论内容,实现页面数据更新。
细节:如果在node页面console.log("汉字")或者后端接收到带有中文的数据或者使用node提供的代码压缩uglifyJs.minify(),cmd窗口会报错,原因是windows系统自带的cmd窗口不能识别utf-8字符编码,解决方法如下:
1、打开CMD.exe命令行窗口;
2、通过chcp命令改变代码页,UTF-8的代码页为65001;
3、修改窗口属性,改变字体
在命令行标题栏上点击右键,选择"属性"->"字体",将字体修改为TrueType字体"LucidaConsole",然后点击确定将属性应用到当前窗口。如下图所示:
这时使用type命令就可以显示UTF-8文本文件的内容了:
4、通过以上操作并不能完全解决问题,因为显示出来的内容有可能不完全。可以先最小化,然后最大化命令行窗口,文件的内容就完整的显示出来了。
5、另外提供一些chcp命令的参考:
chcp65001就是换成UTF-8代码页
chcp936可以换回默认的GBK
chcp437是美国英语
源码:https://github.com/stoneniqiu/ReadingClub(注意不同分支)
小结:这一节主要讲到了如何在Angular页面来加载Jquery组件如富文本框summernote,调取数据和展示数据时应该注意的几点细节,评论的增加、删除、修改,其实内容不是很多,主要要理清思路,根据项目mvc的逻辑结构,自己走一遍,应该就没问题了。
同事负责开发的内容为:
Nodejs之MEAN栈开发(一)----路由与控制器
Nodejs之MEAN栈开发(二)----视图与模型
Nodejs之MEAN栈开发(三)----使用Mongoose创建模型及API
Nodejs之MEAN栈开发(四)----form验证及图片上传
Nodejs之MEAN栈开发(五)----Angular入门与页面改造
Nodejs之MEAN栈开发(六)----用Angular创建单页应用(上)
Nodejs之MEAN栈开发(七)----用Angular创建单页应用(下)
Nodejs之MEAN栈开发(八)----用户认证与会话管理详解
我开发的内容为:Nodejs之MEAN栈开发(九)----用户评论的增加/删除/修改
针对这次Nodejs之MEAN栈开发ReadClubing项目,我主要负责是标题详情页面,包括页面布局、数据展示、评论的增加/删除/修改等工作。1、标题详情页面布局和数据展示
标题详情页操作如图:
module.exports.commentUpdateOne=function(req,res){ if(!req.params.topicid||!req.params.commentid){ sendJSONresponse(res,404,{ "message":"Notfound,topicidandcommentidarebothrequired" }); return; } TopicModel .findById(req.params.topicid) .select('comments') .exec( function(err,topic){ if(!topic){ sendJSONresponse(res,404,{ "message":"topicidnotfound" }); return; }elseif(err){ sendJSONresponse(res,400,err); return; } if(topic.comments&&topic.comments.length>0){ if(!topic.comments.id(req.params.commentid)){ sendJSONresponse(res,404,{ "message":"commentidnotfound" }); }else{ for(vari=0;i<topic.comments.length;i++){ if(topic.comments[i]._id==req.params.commentid){ topic.comments[i].content=req.body.editContent; topic.save(function(err,topic){ if(err){ sendJSONresponse(res,404,err); }else{ sendJSONresponse(res,200,topic); } }); } } } }else{ sendJSONresponse(res,404,{ "message":"Nocommenttoupdate" }); } } ); }; varupdateContentById=function(req,res,commentid){ CommentModel .findById(commentid) .select('content') .exec( function(err,content){ if(!content){ sendJSONresponse(res,404,{ "message":"contentnotfound" }); return; }elseif(err){ sendJSONresponse(res,400,err); return; } sendJSONresponse(res,200,content); topic.save(function(err,comments){ if(err){ sendJSONresponse(res,404,err); }else{ sendJSONresponse(res,200,book); } }); } ); }
ViewCode
最后,通过控制器中执行成功后的回调函数,通过循环找到要修改的那个评论id,根据那条id去更新对应的评论内容,实现页面数据更新。
细节:如果在node页面console.log("汉字")或者后端接收到带有中文的数据或者使用node提供的代码压缩uglifyJs.minify(),cmd窗口会报错,原因是windows系统自带的cmd窗口不能识别utf-8字符编码,解决方法如下:
1、打开CMD.exe命令行窗口;
2、通过chcp命令改变代码页,UTF-8的代码页为65001;
3、修改窗口属性,改变字体
在命令行标题栏上点击右键,选择"属性"->"字体",将字体修改为TrueType字体"LucidaConsole",然后点击确定将属性应用到当前窗口。如下图所示:
这时使用type命令就可以显示UTF-8文本文件的内容了:
typefilename.txt
4、通过以上操作并不能完全解决问题,因为显示出来的内容有可能不完全。可以先最小化,然后最大化命令行窗口,文件的内容就完整的显示出来了。
5、另外提供一些chcp命令的参考:
chcp65001就是换成UTF-8代码页
chcp936可以换回默认的GBK
chcp437是美国英语
源码:
小结:这一节主要讲到了如何在Angular页面来加载Jquery组件如富文本框summernote,调取数据和展示数据时应该注意的几点细节,评论的增加、删除、修改,其实内容不是很多,主要要理清思路,根据项目mvc的逻辑结构,自己走一遍,应该就没问题了。
相关文章推荐
- Active Directory如何用C#进行增加、删除、修改、查询用户与组织单位!
- 解析ASP.NET Mvc开发之删除修改数据 分类: ASP.NET 2014-01-04 23:41 3203人阅读 评论(2) 收藏
- MongoDB增加用户认证: 增加用户、删除用户、修改用户密码、读写权限、只读权限
- MongoDB增加用户认证: 增加用户、删除用户、修改用户密码、读写权限、只读权限
- 微信实验十二、ThinkPHP5.0单页浏览、增加、修改、删除用户及源码下载
- (转)MongoDB 增加用户 删除用户 修改用户 读写权限 只读权限,
- Active Directory如何用C#进行增加、删除、修改、查询用户与组织单位!
- 【树莓派开发-Linux】linux创建用户、设置密码、修改用户、删除用户
- 使用oracle数据库,多用户同时对一个表进行增加,删除,修改,查看等操作,会不会有影响?
- 用户DataGrid实现增加,删除,修改及分页
- MongoDB增加用户认证: 增加用户、删除用户、修改用户密码、读写权限、只读权限
- MongoDB增加用户认证:增加用户、删除用户、修改用户密码、读写权限、只读权限
- MongoDB 增加用户 删除用户 修改用户 读写权限 只读权限
- MVC5 网站开发之七 用户功能 3用户资料的修改和删除
- Active Directory如何用C#进行增加、删除、修改、查询用户与组织单位(转)
- MongoDB增加用户认证:增加用户、删除用户、修改用户密码、读写权限、只读权限
- Active Directory如何用C#进行增加、删除、修改、查询用户与组织单位!
- MySQL增加/删除用户、授权、修改密码
- ASP.NET MVC5网站开发之用户资料的修改和删除3(七)
- MongoDB增加用户认证:增加用户、删除用户、修改用户密码、读写权限、只读权限