继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

【金秋打卡】第15天 单表管理功能前后端开发

锦书难书Q
关注TA
已关注
手记 63
粉丝 0
获赞 8

课程名称:Spring Cloud+ Vue前后端分离开发企业级在线视频系统

课程章节:第5章 单表管理功能前后端开发

讲师姓名:甲蛙老师

课程内容

修改、删除大章:增加修改和删除大章功能,新增和修改用同一个保存功能,通过传入的参数id有没有值来判断

课程收获

由于id是生成的UUID,所以在新增数据的时候chapter.id是空的,可以根据id是否有值来判断是新增还是修改

前端方法区别如下:

add() {
 
let _this = this;
 
_this.chapter = {};
 
$("#form-modal").modal("show");
},

edit(chapter) {
 
let _this = this;
 
_this.chapter = $.extend({}, chapter);
 
$("#form-modal").modal("show");
},
 


区别在于$.extend({}, chapter);由于本质上是一个方法,而chapter表单里的数据是双向绑定的,所以导致如果先修改再点新增时会有不应该存在的数据,所以使用这个方法,用一个空的对象隔离开,完成新增和修改的独立。

http://img1.sycdn.imooc.com/63666f880001c5d519200919.jpg

if(StringUtils.isEmpty(chapterDto.getId())){
    insert(
chapter);
}
else {
    update(
chapter);
}
/**
 *
新增
 
*/
private void insert(Chapter chapter) {
    chapter.setId(
UuidUtil.getShortUuid());
   
chapterMapper.insert(chapter);
}
/**
 *
更新
 
*/
private void update(Chapter chapter) {
   
chapterMapper.updateByPrimaryKey(chapter);
}


而新增和修改的方法只是在save这个方法中使用,将其设置为私有的,不对外暴露。


打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP