计算当前分页的总数量

<template>
  <div>
    <div v-for="(page, pageIndex) in splitInfo" :key="pageIndex">
      <ul>
        <li v-for="(item, i) in page" :key="i">
          <p class="f">
            <span>{{ item.name }}</span>
            <span>{{ item.dosage }}{{ item.dosunit }}&nbsp;&nbsp;x&nbsp;&nbsp;{{ item.qty }}{{ item.wardUnit }}</span>
          </p>
          <p class="s">
            <span>Sig:</span>
            <span>{{ item.dosage }}{{ item.dosunit }}</span>
            <span>{{ item.usgnm }}</span>
            <span>{{ item.feqNm }}</span>
          </p>
        </li>
      </ul>
      <p><span>发药员:</span><span>合&nbsp;计:{{ getPageTotalPrice(pageIndex) }}</span></p>
    </div>
  </div>
</template>

<script>
export default {
  data() {
    return {
      currentPageIndex: 0
    }
  },
  computed: {
    // 将tableData数组拆分为每页最多显示20条数据的二维数组
    splitInfo() {
      var pageSize
      if (this.typeKind == 1) {
        pageSize = 20;
      } else {
        pageSize = 5
      }
      const length = this.tableData.length;
      const pageCount = Math.ceil(length / pageSize);
      const pages = Array.from({ length: pageCount }, (_, index) => {
        const start = index * pageSize;
        const end = start + pageSize;
        return this.tableData.slice(start, end)
      });
      return pages;
    },
  },
  methods: {
    // 计算当前页的总价
    getPageTotalPrice(pageIndex) {
      const pageData = this.splitInfo[pageIndex];
      let total = 0;
      for (let i = 0; i < pageData.length; i++) {
        total += pageData[i].price * pageData[i].qty;
      }
      return total.toFixed(2);
    }
  }
}
</script>

  • 8
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: ThinkPHP5 分页数量控制可以通过在查询条件中设置 `limit` 参数来实现。例如,假设你需要在文章列表中分页显示,每页显示 10 条数据,可以使用以下代码: ```php // 获取当前页数,默认为 1 $page = input('get.page/d', 1); // 每页显示的数量 $limit = 10; // 计算偏移量 $offset = ($page - 1) * $limit; // 查询文章列表 $articles = Db::name('article')->limit($offset, $limit)->select(); ``` 在上面的代码中,`$page` 变量获取当前页数,默认为 1。`$limit` 变量定义每页显示的数量为 10。`$offset` 变量计算偏移量,根据当前页数和每页显示的数量计算偏移量。最后,通过 `limit` 方法设置查询结果的限制条件。 注意,上面的代码仅为示例,具体实现需要根据你的实际需求进行调整。 ### 回答2: 要控制ThinkPHP5分页数量,我们可以通过设置查询条件和传入参数来实现。 首先,我们需要在控制器中获取每页显示的数量。可以使用`request`方法获取请求参数中的每页数量值。 ```php $pageSize = request()->param('pageSize', 10); // 每页显示10条数据 ``` 然后,我们需要在模型(Model)中进行查询操作。使用`limit`方法限制查询结果的数量,同时使用`paginate`方法来进行分页。 ```php $data = MyModel::where($condition)->limit($pageSize)->paginate($pageSize, false, ['query' => request()->param()]); ``` 在`paginate`方法中,第一个参数指定每页显示的数量,第二个参数为是否显示总页数,第三个参数传入查询参数,保证分页链接可以正确地生成。 最后,我们需要在视图(View)中渲染分页链接。可以使用`render`方法来生成分页链接。 ```php echo $data->render(); ``` 以上就是控制ThinkPHP5分页数量的方法。我们通过获取每页显示的数量,设置查询条件,并传递参数来实现分页数量的控制。 ### 回答3: ThinkPHP5分页数量控制可以通过两种方式实现:手动控制和自动计算。 手动控制方式是通过在分页查询方法中传入参数来指定每页显示的数据数量。在使用分页查询的时候,我们可以在paginate方法中添加参数,如paginate(10),表示每页显示10条数据。这样,无论数据库中有多少条数据,都会按照每页显示10条的方式进行分页,并显示相应的页码。手动控制方式适用于在特定需求下,需要固定每页显示数量的情况。 自动计算方式是通过对数据总量进行计算,根据需求自动设置每页显示的数据数量。ThinkPHP5提供了paginate方法的第二个参数用于设置自动计算每页显示数量的规则,如paginate(10, true)。设置该参数为true时,系统会根据数据总量和设置的分页参数自动计算每页显示的数据数量,并进行分页显示。这种方式适用于数据量比较大,需要根据数据总量来优化每页显示数量的情况。 总之,无论是手动控制还是自动计算,ThinkPHP5提供了灵活的方式来控制分页数量,开发者可以根据实际需求选择合适的方式来进行分页处理。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值