vue3.0手动封装分页组件的方法
本文实例为大家分享了vue3.0手动封装分页组件的具体代码,供大家参考,具体内容如下
1.父组件引入
src/views/goods/components/goods-comment.vue
//调接口 import {findCommentListByGoods } from '@/api/product.js' export default{setup(){// 筛选条件准备const reqParams = reactive({// 当前页码page: 1,// 每页的条数pageSize: 10,// 是否有图片hasPicture: null,// 筛选条件tag: null,// 排序的字段sortField: null})// 侦听参数的变化watch(reqParams, () => {findCommentListByGoods(goods.value.id, reqParams).then(ret => {total.value = https://www.it610.com/article/ret.result.countslist.value = ret.result.items})}, {immediate: true})// 控制页码的变化const changePage = (page) => {// 修改分页参数,重新调用接口即可reqParams.page = page}} }
2.子组件 src/components/library/xtx-pagination.vue
上一页3'>...{{item}}...下一页.xtx-pagination {display: flex; justify-content: center; padding: 30px; > a {display: inline-block; padding: 5px 10px; border: 1px solid #e4e4e4; border-radius: 4px; margin-right: 10px; &:hover {color: @xtxColor; }&.active {background: @xtxColor; color: #fff; border-color: @xtxColor; }&.disabled {cursor: not-allowed; opacity: 0.4; &:hover {color: #333; }}}> span {margin-right: 10px; }}
知识点:attrs表示父组件传递的属性,但是props没有接收的属性,这种属性不是响应式的(vue3新增)
3.实现效果
文章图片
【vue3.0手动封装分页组件的方法】以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
推荐阅读
- 2020-04-07vue中Axios的封装和API接口的管理
- 基于|基于 antd 风格的 element-table + pagination 的二次封装
- python自定义封装带颜色的logging模块
- jQuery插件
- 使用Promise对微信小程序wx.request请求方法进行封装
- JavaScript|vue 基于axios封装request接口请求——request.js文件
- vue.js|vue中使用axios封装成request使用
- Objective-c
- Swift学习笔记(三)Alamofire二次封装
- js之策略模式