国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Vue3+Element plus+pageHelper實現(xiàn)分頁

這篇具有很好參考價值的文章主要介紹了Vue3+Element plus+pageHelper實現(xiàn)分頁。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

安裝element plus

npm install element-plus --save

引入

修改main.js:

import { createApp } from 'vue'
import App from './App.vue'
import ElementPlus from 'element-plus'
import 'element-plus/dist/index.css'

const app = createApp(App)
app.use(ElementPlus)
app.mount('#app')

后端

pom.xml:

<dependency>
	<groupId>com.github.pagehelper</groupId>
	<artifactId>pagehelper-spring-boot-starter</artifactId>
</dependency>

controller:

package com.xwj.page_helper.controller;

import com.github.pagehelper.PageInfo;
import com.xwj.page_helper.entity.Category;
import com.xwj.page_helper.service.CategoryService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;

import java.util.List;

/**
 * @Description 歡迎頁
 * @Author yuki
 * @Date 2023/8/8 17:08
 * @Version 1.0
 **/
@RestController
@RequestMapping("category")
public class CategoryController {
    @Autowired
    CategoryService categoryService;
    @GetMapping("/getPage")
    public PageInfo<Category> getPage(@RequestParam Integer pageNum, @RequestParam Integer pageSize){
        return categoryService.getPage(pageNum, pageSize);
    }
}

service:

package com.xwj.page_helper.service.impl;

import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.xwj.page_helper.entity.Category;
import com.xwj.page_helper.mapper.CategoryMapper;
import com.xwj.page_helper.service.CategoryService;
import org.springframework.stereotype.Service;

import java.util.List;

/**
 * @Description TODO
 * @Author yuki
 * @Date 2023/8/10 14:30
 * @Version 1.0
 **/
@Service
public class CategoryServiceImpl extends ServiceImpl<CategoryMapper, Category> implements CategoryService {
   
    @Override
    public PageInfo<Category> getPage(int pageNum, int pageSize) {
        PageHelper.startPage(pageNum, pageSize);
        List<Category> categories = baseMapper.selectAll();
        PageInfo<Category> pageInfo = new PageInfo<>(categories);
        return pageInfo;
    }
}

前端

vue:文章來源地址http://www.zghlxwxcb.cn/news/detail-642463.html

<template>
  <el-table :data="tableData.list" style="width: 100%">
    <el-table-column prop="id" label="id" width="180" />
    <el-table-column prop="name" label="name" width="180" />
    <el-table-column prop="parentId" label="parentId" />
    <el-table-column prop="isParent" label="isParent" />
    <el-table-column prop="sort" label="sort" />
  </el-table>
  <div class="example-pagination-block">
    <el-pagination layout="prev, pager, next" :total="parseInt(pageInfo.total)"  @size-change="handleSizeChange"
      @current-change="handleCurrentChange"/>
  </div>
</template>

<script setup>
import axios from 'axios'
import { onMounted,reactive } from 'vue';

// 注意reactive可能遇到響應(yīng)失效的情況,可使用ref([]) https://blog.csdn.net/m0_57033755/article/details/129043116
const tableData = reactive({
  list: []
})
const pageInfo = reactive({
  currentPage: 1,
  pageSize: 5,
  total: undefined
})

function handleSizeChange(val){
  getData(val, pageInfo.pageSize)
}
function handleCurrentChange(val){
  getData(val, pageInfo.pageSize)
}
function getData(currentPage, pageSize){
  axios({
      method: 'GET',
      url: '/local/page-helper/category/getPage',
      params: {'pageNum': currentPage, 'pageSize': pageSize}
  }).then(function(res){
      pageInfo.total = res.data.total
      tableData.list = res.data.list
  })
}

onMounted(() => {
  getData(1,5)
})
</script>

到了這里,關(guān)于Vue3+Element plus+pageHelper實現(xiàn)分頁的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • vue3 vue.config.js配置Element-plus組件和Icon圖標(biāo)實現(xiàn)按需自動引入

    vue3 vue.config.js配置Element-plus組件和Icon圖標(biāo)實現(xiàn)按需自動引入

    打包時,報警告,提示包太大會影響性能 在頁面直接使用,直接使用 SVG 圖標(biāo),當(dāng)做一般的 svg 使用 icon使用時需要用以下兩種方式方式: 如果用在el-button里面的icon屬性上使用,用SVG方式無效,還是需要引入再使用(不知道有沒有其他方式) 注意: 使用 :icon=\\\"Edit\\\" 則icon的大

    2024年02月06日
    瀏覽(108)
  • vue3 element-plus 實現(xiàn)圖片預(yù)覽

    vue3 element-plus 實現(xiàn)圖片預(yù)覽

    element-plus下有這么一個組件 el-image-viewer /,但是這個組件是沒寫在文檔上面的,像普通組件一樣使用即可 可以通過點擊按鈕實現(xiàn)圖片預(yù)覽,而非el-image組件只能通過點擊圖片實現(xiàn)預(yù)覽 2.1封裝組件 2.3組件使用 在需要使用的地方引入,然后使用即可,這不是重點,每個人使用的

    2024年02月15日
    瀏覽(28)
  • vue3+ts+element-plus 之使用node.js對接mysql進行表格數(shù)據(jù)展示

    vue3+ts+element-plus 之使用node.js對接mysql進行表格數(shù)據(jù)展示

    * 初始化node 查看node是否安裝 node -v 初始化命令 npm init 初始化配置解釋如下: 完成后會有一個package.json文件 * 安裝可能用到的依賴 根據(jù)需求安裝,我這里需要對接mysql,安裝依賴 ,我是一次性安裝完,后邊會直接使用,也可以邊安裝邊使用。如下 安裝成功如下: * 配置文件

    2024年02月15日
    瀏覽(54)
  • Vue3+element-plus實現(xiàn)后臺管理系統(tǒng)

    Vue3+element-plus實現(xiàn)后臺管理系統(tǒng)

    ?環(huán)境:node.js軟件 、Vs code、vite、elemnt-plus、windicss(樣式框架) ? ? 1、首先,使用npm 命令構(gòu)建項目( vscode安裝的插件 vscode中文顯示插件 ? 2、高亮提示插件volar ? 3、vue 3 sni 代碼提示) 快速上手 | Vue.js ? ?a. npm -v 查看node.js 版本 ? ?b. ?npm ?config get registry ? 查看注冊鏡像是

    2024年02月09日
    瀏覽(33)
  • (二) Vue3 + Element-Plus 實現(xiàn)動態(tài)菜單欄

    (二) Vue3 + Element-Plus 實現(xiàn)動態(tài)菜單欄

    系列介紹:Vue3 + Vite + TS 從零開始學(xué)習(xí) 項目搭建:(一) Vue3 + Vite + TS 項目搭建 實現(xiàn)動態(tài)菜單欄:(二) Vue3 + Element-Plus 實現(xiàn)動態(tài)菜單欄 實現(xiàn)動態(tài)面包屑:(三) Vue3 + Element-Plus 實現(xiàn)動態(tài)面包屑 實現(xiàn)動態(tài)標(biāo)簽頁:(四) Vue3 + Element-Plus 實現(xiàn)動態(tài)標(biāo)簽頁 實現(xiàn)動態(tài)主題色切換(demo):(五)

    2023年04月23日
    瀏覽(59)
  • Vue3+element plus+sortablejs實現(xiàn)table列表拖拽

    1、安裝 2、引入 3、使用 表格表頭必須加 row-key ,否則會出現(xiàn)排序錯亂 完整代碼 table.vue

    2024年02月07日
    瀏覽(24)
  • [element plus] 分頁組件使用 - vue

    [element plus] 分頁組件使用 - vue

    學(xué)習(xí)關(guān)鍵語句: 餓了么加組件分頁組件 element+分頁組件 vue3 + 餓了么分頁組件 必須要說明的是 , 這篇文章使用的分頁組件樣式包含了餓了么官方給出警告以后會棄用的部分 但是問題是什么呢? 問題就是我還沒找到這個用 vmodel 綁定的使用方法 , 再加上現(xiàn)在也算是有點小忙 , 暫時

    2024年02月09日
    瀏覽(21)
  • Vue3 element-plus表單嵌套表格實現(xiàn)動態(tài)表單驗證

    Vue3 element-plus表單嵌套表格實現(xiàn)動態(tài)表單驗證

    部分效果圖如下: 另表格有添加和刪除按鈕,點擊提交進行表單驗證。 首先data格式必須是對象包裹數(shù)組 給表單綁定form數(shù)據(jù) 表格綁定tableData數(shù)據(jù) 給表單項增加驗證規(guī)則 rules對應(yīng)data rules對象,prop對應(yīng)表單字段(注意是表格里每一行對應(yīng)的字段 forms.tableData[下標(biāo)].key) prop的關(guān)

    2024年02月14日
    瀏覽(25)
  • Vue3 + Element Plus 實現(xiàn)動態(tài)標(biāo)簽頁及右鍵菜單

    Vue3 + Element Plus 實現(xiàn)動態(tài)標(biāo)簽頁及右鍵菜單

    目錄 先上圖 ?使用el-dropdown綁定右鍵菜單,為每個tab頁綁定一個右鍵 右鍵菜單生效后控制每個下拉項的禁用與顯示(每一項代表一個功能) 每個右鍵項對應(yīng)的功能? 控制每次只顯示一個右鍵 完整代碼 ????????只有首頁的情況 ????????多個tab頁的情況 ?

    2024年02月07日
    瀏覽(23)
  • Vue.js 中使用 Element UI 實現(xiàn)異步加載分頁列表

    Vue.js 中使用 Element UI 實現(xiàn)異步加載分頁列表

    在前端開發(fā)中,我們常常需要展示大量數(shù)據(jù),并提供分頁瀏覽的功能。本篇博客將介紹如何使用 Vue.js 和 Element UI 組件庫創(chuàng)建一個簡單的異步加載分頁列表。 Vue.js Element UI JavaScript 我們將創(chuàng)建一個包含表格和分頁組件的 Vue 單文件組件。以下是組件的基本結(jié)構(gòu): 引入 Element U

    2024年02月04日
    瀏覽(33)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包