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

vue3+Naive UI+fastapi 前后端分離 Pagination 數(shù)據分頁實戰(zhàn)演練

這篇具有很好參考價值的文章主要介紹了vue3+Naive UI+fastapi 前后端分離 Pagination 數(shù)據分頁實戰(zhàn)演練。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

記錄一次vue3+Naive UI+fastapi 前后端分離 Pagination 數(shù)據分頁實戰(zhàn)演練的過程。
Naive UI 是一個 Vue3 的組件庫。
FastAPI 是一個用于構建 API 的現(xiàn)代、快速(高性能)的 web 框架,使用 Python 3.6+ 并基于標準的 Python 類型提示。

vue3+Naive UI+fastapi 前后端分離 Pagination 數(shù)據分頁實戰(zhàn)演練

fastapi-backend 后端目錄
vue-frontend 前端目錄
這里我只貼一些關鍵的代碼了,文末有代碼倉庫可以查看完整的代碼.

后端

后端fastapi的搭建請看這里,就不在重復了

前端

Vue 及 Naive UI 的創(chuàng)建

在項目的根目錄終端下:

npm init vue@latest  # 然后一路回車即可

安裝及引入Naive UI

npm i -D naive-ui

安裝后 配置前端下邊的main.js引入Naive UI框架.

import { createApp } from 'vue'
import App from './App.vue'
import naive from 'naive-ui'

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

安裝axios npm install axios

然后在前端目錄的終端下:npm run dev
即可看到項目正常啟動了.

前端的數(shù)據渲染

創(chuàng)建Home.vue,在App.vue中引入。

Home.vue 中配置一個簡單的列表和分頁組件:

<template>
  <n-list>
    <n-list-item v-for="item in items" :key="item.id">
      {{ item }}
    </n-list-item>
  </n-list>
  <n-pagination v-model:page="current" :item-count="count" :on-update:page="showSizeChange" />
</template>

其中v-model:page是當前頁碼數(shù),item-count是數(shù)據的總條數(shù)。:on-update:page="showSizeChange"是當前頁碼數(shù)發(fā)生變化后的響應。

再看Vue中的js代碼:

<script setup>
import { ref, watch } from 'vue'
import axios from 'axios'

const baseURL = 'http://localhost:8000'

const items = ref([]) // 數(shù)據
const count = ref(0) // 數(shù)據總條數(shù)
const current = ref(1) // 當前頁面
const size = ref(10) // 每頁顯示的條數(shù)

// :on-update:page 事件 來控制獲取當前頁面的頁碼數(shù)
const showSizeChange = (page,) => {
  console.log(current.value, size.value)
  current.value = page
}

// 翻頁方法
const nextPage = () => {
  let skip = size.value * (current.value - 1)
  let limit = size.value
  console.log(skip, limit)
  axios.get(baseURL + '/getitems',
    {
      params: {
        skip: skip,
        limit: limit
      },
    },
  ).then(function (response) {
    console.log(response.data)
    items.value = response.data.items
    count.value = response.data.item_count
  })
}
// 默認加載第一頁的數(shù)據
nextPage()

// 偵聽器,用來檢測頁碼變化后執(zhí)行翻頁方法
watch(current,nextPage)
</script>

nextPage()根據當前頁碼數(shù)加載數(shù)據,watch(current,nextPage)用來檢測頁碼變化后執(zhí)行翻頁方法,let skip = size.value * (current.value - 1),這個是比較關鍵的代碼,控制著數(shù)據返回的起始點.與后端的return db.query(Item).offset(skip).limit(limit).all()代碼時對應的。

最后運行代碼效果如下:

vue3+Naive UI+fastapi 前后端分離 Pagination 數(shù)據分頁實戰(zhàn)演練

本文代碼倉庫地址:

https://github.com/bosichong/vue3-fastapi-pagination/tree/naive_Pagination文章來源地址http://www.zghlxwxcb.cn/news/detail-461654.html

到了這里,關于vue3+Naive UI+fastapi 前后端分離 Pagination 數(shù)據分頁實戰(zhàn)演練的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!

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

領支付寶紅包贊助服務器費用

相關文章

  • naive-ui NPopconfirm怎么用vue3的h()渲染

    naive-ui NPopconfirm怎么用vue3的h()渲染

    先看效果 然后我先貼代碼, 你們看懂的先運行下, 文章后面我教你怎么 添加這種有template,有slot插槽的組件 正文 以提示窗組件為例,官方地址為==》Naive UI 這個部分 就是下圖左邊部分駝峰寫法 然后你vscode 鍵盤ctrl+鼠標左鍵 點擊他 然后同樣的方法查看ButtonProps,你就知道

    2024年02月13日
    瀏覽(24)
  • Vue3+Vite+Pinia+Naive后臺管理系統(tǒng)搭建之四:Naive UI 組件庫的安裝和使用

    Vue3+Vite+Pinia+Naive后臺管理系統(tǒng)搭建之四:Naive UI 組件庫的安裝和使用

    前言 如果對 vue3 的語法不熟悉的,可以移步?Vue3.0 基礎入門Vue3.0 基礎入門快速入門。 UI 組件請參考官網:Naive Ui 官網 為什么選擇 naive ui 不繼續(xù)用 element ui,因為尤大大推薦,可以嘗試下,而且 naive ui 更貼近 vue3 的語法,當然易上手還是element ui 好一點。 github 開源庫:Vue

    2024年02月07日
    瀏覽(128)
  • Vue3的幾款UI組件庫:Naive UI、Element Plus、 Ant Design Vue、Arco Design

    vue3系列的三款ui框架簡要對比: 框架 Element Plus Naive ui Ant Design Vue Arco Design 簡介 element-ui Vue3版本,國內使用廣泛 Vue作者推薦的Vue3ui 組件庫 Ant Design 的 Vue 實現(xiàn),組件的風格與 Ant Design 保持同步 ArcoDesign 主要服務于字節(jié)跳動旗下中后臺產品的體驗設計和技術實現(xiàn) 社區(qū)活躍度

    2024年02月03日
    瀏覽(34)
  • vue3 + typescript + vite + naive ui + tailwindcss + jsx 仿蘋果桌面系統(tǒng)

    vue3 + typescript + vite + naive ui + tailwindcss + jsx 仿蘋果桌面系統(tǒng)

    基于 vue3.x + typescript + vite + naive ui + tailwindcss + jsx + vue-router + pinia,項目使用 tsx 作為模版輸出,全程沒有使用vue提供的SFC, 仿macos桌面前端項目,開源免費模版,希望減少工作量和學習新技術,希望能夠幫助大家; 本人主要是后端的開發(fā),對于前端我也是剛入門的小白,有很

    2024年02月07日
    瀏覽(22)
  • Naive UI+Vue3來實現(xiàn)點擊按鈕一鍵切換明暗主題的功能

    Naive UI+Vue3來實現(xiàn)點擊按鈕一鍵切換明暗主題的功能

    記錄一下如何使用Naive UI+Vue3代碼來實現(xiàn)一鍵切換明暗主題的功能。 效果如下: 終端下輸入: 起好項目的名稱,然后一路回車即可。 至此Vue3的項目已經搭建完畢,打開http://127.0.0.1:5173/就可以看到項目的默認首頁了。 安裝Naive UI依賴庫 然后我們根據官方出的配置對項目進行

    2024年02月12日
    瀏覽(75)
  • vue3 + naive ui + Tabs 報錯 ‘Slot “default“ invoked outside of the render function‘

    警告的異常信息: 解決方法: 如下給Tabs組件加一個defaultValue的默認值即可 參考:https://github.com/tusen-ai/naive-ui/issues/3134

    2024年01月21日
    瀏覽(24)
  • 基于Vue和Element UI實現(xiàn)前后端分離和交互

    基于Vue和Element UI實現(xiàn)前后端分離和交互

    目錄 前言 一、Element UI簡介 1.Element UI是什么 2.Element UI的特點 二、項目搭建 1.創(chuàng)建一個SPA項目 2.安裝 Element-UI 3.導入組件 4.創(chuàng)建登陸注冊界面 登錄組件---Login.vue 注冊組件---Register.vue 定義組件與路由的對應關系 效果演示:? 三、前后端數(shù)據交互 1.安裝axios 2.導入api模塊,添加

    2024年02月08日
    瀏覽(23)
  • 前后端分離,使用vue3整合SpringSecurity加JWT實現(xiàn)登錄校驗

    前后端分離,使用vue3整合SpringSecurity加JWT實現(xiàn)登錄校驗

    前段時間寫了一篇spring security的詳細入門,但是沒有聯(lián)系實際。 所以這次在真實的項目中來演示一下怎樣使用springsecurity來實現(xiàn)我們最常用的登錄校驗。本次演示使用現(xiàn)在市面上最常見的開發(fā)方式,前后端分離開發(fā)。前端使用vue3進行構建,用到了element-plus組件庫、axios封裝、

    2024年01月23日
    瀏覽(24)
  • SSM(Vue3+ElementPlus+Axios+SSM前后端分離)--搭建Vue 前端工程[二]

    SSM(Vue3+ElementPlus+Axios+SSM前后端分離)--搭建Vue 前端工程[二]

    需求分析 效果圖 思路分析 使用Vue3+ElementPlus 完成。 代碼實現(xiàn) 修改ssm_vuesrcApp.vue 成如下形式, 會刪除部分用不上的代碼,增加 修改ssm_vuesrcviewsHomeView.vue , 刪除ssm_vuesrccomponentsHelloWorld.vue 創(chuàng)建ssm_vuesrccomponentsHeader.vue 修改ssm_vuesrcApp.vue , 引入Header 組件 創(chuàng)建全局的global

    2024年02月13日
    瀏覽(50)
  • node+vue3+mysql前后分離開發(fā)范式——實現(xiàn)視頻文件上傳并渲染

    node+vue3+mysql前后分離開發(fā)范式——實現(xiàn)視頻文件上傳并渲染

    大家好,我是yma16,本文分享關于 node+vue3+mysql前后分離開發(fā)范式——實現(xiàn)視頻文件上傳并渲染。 技術選型 前端:vite+vue3+antd 后端:node koa 數(shù)據庫:mysql koa是一個現(xiàn)代的Node.js框架,可以用來構建Web應用程序。 Node.js的mime庫 Node.js的mime庫是用于根據文件擴展名獲取對應的MIME類型

    2024年02月19日
    瀏覽(35)

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

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

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

二維碼1

領取紅包

二維碼2

領紅包