暑期项目实训记录-12

项目的老师运行系统之后提出了一些问题和建议,我针对我负责的部分出现的问题进行了修改,以下是问题解决和解决方案


1、问题:

黑名单管理中,点击移除,提示移除成功,接口返回fail。批量移除也是一样的问题。

 原因及解决方案:

由于没有在代码中设置每次记录变化之后及时刷新的功能,导致记录已经从数据库中删除了,但是仍然停留在页面上,第二次点击删除按钮时,就会造成页面提示成功但是接口返回fail的情况,因此在代码中多添加一行代码,每次请求接口删除响应数据之后及时刷新页面,解决此问题。

deleteFromBlack(){//从黑名单中批量删除用户
        for (let i = 0; i < this.multipleSelection.length; i++) {
          this.sz_openid_black[i] = this.multipleSelection[i].user_openid;//sz_openid_black存放选中的用户的openid
        }
        this.formData=this.sz_openid_black
        const _this = this
        this.$axios.post('http://grandland.gl-data.com:14332/manage/usermanage/freeblacklist', this.formData).then(function (resp) {
          _this.$message({
            message: '移除成功!',
            type: 'success'
          });
        })
        this.$router.go(0);
      },

2)问题:

用户管理中

 

上图这个功能,用户管理,添加黑名单操作,未选中任何活动,仍然提示加入黑名单成功。这种操作,前端需要判空的,如果没有选择,在前端就提示不允许后续操作了。

原因及解决办法:

是由于代码中没有进行判空,导致选中部分但是不选中活动依然会执行请求接口的代码。

在代码中添加判空的过程:

 submitActUser(){       //处理表单选择的活动,提交表单

        //获取选择的活动
        for(let i=0;i<this.SelectActivities.length;i++){
          this.temp_formData[i]=this.SelectActivities[i].act_id;
        }
        this.act_formData=this.temp_formData;

        const _this = this
        if(this.radio===1){//选择全部活动
          this.isall='1';
          var parm1={
            act_ids:this.act_formData,
            user_openid:this.formData,
            isall:this.isall
          }
          this.$axios.post('http://grandland.gl-data.com:14332/manage/usermanage/addblacklist',
            parm1).then(function (resp) {
            _this.$message({
              message: '加入黑名单成功!',
              type: 'success'
            });
          })
        }else{//选择部分
          this.isall='0';

          if(this.SelectActivities.length<=0){
            _this.$message({
              message: '请选择限制的活动!',
              type: 'error'
            });
          }else{
            var parm={
              act_ids:this.act_formData,
              user_openid:this.formData,
              isall:this.isall
            }
            this.$axios.post('http://grandland.gl-data.com:14332/manage/usermanage/addblacklist', parm).then(function (resp) {
              _this.$message({
                message: '加入黑名单成功!',
                type: 'success'
              });
            })
          }
        }
      }

在此类问题中,需要考虑到用户使用这个系统时,不会完全按照开发者的意愿进行操作,因此开发系统时需要对各种异常情况进行考虑和处理,增强系统的可用性。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值