bootStarp Table插件使用,手动封装ajax发送请求

  1. 背景:
    项目需求,接触了bootstarpTable,这个插件,很不错的一个插件,有bootstarp做大腿,api比较全面。写的过程中碰到了几个问题,记录一下。
  2. 问题:

    1. 封装ajax,后台借口是get请求类似于localhost:8893/api/test?quset={"aa":123} 这样,刚开始思路如下

      “`js
      queryParams: params => {
      var value = {
      pageSize : params.limit, //每一页的数据行数,默认是上面设置的10(pageSize)
      pageIndex : params.offset/params.limit+1, //当前页面,默认是上面设置的1(pageNumber)
      param : “Your Param” //这里是其他的参数,根据自己的需求定义,可以是多个
      }
      return ({“quset”:value}) //也尝试了return (“quset”=JSON.stringify(value))
      }

      但是不是把中括号加上了就是把后边的quset去掉了,然后达不到想要的格式。加上有考虑到可能会增加token验证,百度搜到了可以自己封装ajax,但是相关的资料太少了,没有搜索到几个自己封装ajax的例子。不过也是摸索着实现了自己的要求,代码如下:
      ```js
      //查询数据
      searchData(res) {
          //查询数据
          let that = this;
          _call(res['url'] + "?queryJson=" + JSON.stringify(res.data), {}, val => {
              if (val.Success) {
                  //分页和不分页所传数据不同
                  if(that.option.pagination){
                      let _val = {};
                      _val['rows'] = val['rows'];
                      _val['total'] = val['totalCount'];
                      _val['page'] = val['pageIndex'];
                      res.success(_val); //也可以写成res.success({rows:val['rows'],page:val['pageIndex']})
                  }else{
                      res.success(val['rows']);//一定要调用res的success  不能直接更新bootstarp
                  }
              }
          }, 1)
      }

    注意:成功的回调一定要用res中的success方法,就是因为在封装的ajax的成功回调中调用了更新bootstarpTable的Api,导致测试半天没有加载数据。
    2.点击查询
    开始思路受限,总想着点击查询后再调用bootstarp的ajax,苦恼没有对应api。后来出去溜达一圈,换个思路,点击查询是直接调用自己的ajax,查询到数据然后更新bootstarp不就行了吗。问题算是告一段落。

  3. 代码地址
    代码已经上传到github:传送门。目前代码用到的只有这些,后续有别的需求会更新博客。
  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值