日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

iview-table实现自适应高度渲染表格条数

發布時間:2023/12/20 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 iview-table实现自适应高度渲染表格条数 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

實現效果:

<template><div :style="{ height: scrollerHeight + 'px' }"><div><Input v-model="searchForm.name" icon="md-search" style="width: 30%;" @keyup.enter.native="search()"></Input></div><br><Table:columns="columns":data="data"></Table><div style="margin-top: 5px;float: right;"><Page:total="dataCount":current="tCurrentPage":page-size="pageSize":page-size-opts="pageSizeOpts"show-totalshow-sizersize="small"@on-change="changepage"@on-page-size-change="changeSize"></Page></div></div> </template> <script> export default {data () {return {columns: [{title: "Name",key: "name"},{title: "Age",key: "age"},{title: "Address",key: "address"}],data: [],searchForm: {name: ''},dataCount: 0, // 初始化信息總條數pageSize: 1,pageSizeOpts: [10, 15, 20],allTableData: [], // 用于分頁數據存放filterData: [], // 用于存放搜索條件下的數據tCurrentPage: 1,scrollerHeight: window.innerHeight - 130 // 130指的是table表頭的高度 + 除table外,其他模版占的高度(input、margin、padding、page等),需要自己大致算一下!!};},mounted () {// 添加監聽事件listenResizeFn, 用來監聽頁面高度的變化window.addEventListener("resize", this.listenResizeFn)},beforeDestroy () {// 移除綁定的listenResizeFn事件監聽window.removeEventListener('resize', this.listenResizeFn)},watch: {scrollerHeight (val, oldVal) {console.log('scrollerHeight Change: ' + val, oldVal)return val - 130 // 跟初始化同理}},created () {this.init() // 后臺接口獲取table數據},methods: {init () {// 這里是api接口拿數據的地方,拿到數據先緩存起來,方便頁面input的搜索條件進行數據的查詢this.allTableData = [{name: "John Brown",age: 18,address: "New York No. 1 Lake Park",date: "2016-10-03"},{name: "Jim Green",age: 24,address: "London No. 1 Lake Park",date: "2016-10-01"},{name: "Joe Black",age: 30,address: "Sydney No. 1 Lake Park",date: "2016-10-02"},{name: "Jon Snow",age: 26,address: "Ottawa No. 2 Lake Park",date: "2016-10-04"},{name: "Jon Snow2",age: 26,address: "Ottawa No. 2 Lake Park",date: "2016-10-04"},{name: "Jon Snow3",age: 26,address: "Ottawa No. 2 Lake Park",date: "2016-10-04"},{name: "Jon Snow4",age: 26,address: "Ottawa No. 2 Lake Park",date: "2016-10-04"},{name: "Jon Snow5",age: 26,address: "Ottawa No. 2 Lake Park",date: "2016-10-04"},{name: "Jon Snow6",age: 26,address: "Ottawa No. 2 Lake Park",date: "2016-10-04"},{name: "Jon Snow7",age: 26,address: "Ottawa No. 2 Lake Park",date: "2016-10-04"},{name: "Jon Snow8",age: 26,address: "Ottawa No. 2 Lake Park",date: "2016-10-04"},{name: "Jon Snow9",age: 26,address: "Ottawa No. 2 Lake Park",date: "2016-10-04"},{name: "Jon Snow10",age: 26,address: "Ottawa No. 2 Lake Park",date: "2016-10-04"},{name: "Jon Snow11",age: 26,address: "Ottawa No. 2 Lake Park",date: "2016-10-04"},{name: "Jon Snow12",age: 26,address: "Ottawa No. 2 Lake Park",date: "2016-10-04"},{name: "Jon Snow13",age: 26,address: "Ottawa No. 2 Lake Park",date: "2016-10-04"},{name: "Jon Snow14",age: 26,address: "Ottawa No. 2 Lake Park",date: "2016-10-04"},{name: "Jon Snow15",age: 26,address: "Ottawa No. 2 Lake Park",date: "2016-10-04"},{name: "Jon Snow16",age: 26,address: "Ottawa No. 2 Lake Park",date: "2016-10-04"},{name: "Jon Snow17",age: 26,address: "Ottawa No. 2 Lake Park",date: "2016-10-04"},{name: "Jon Snow18",age: 26,address: "Ottawa No. 2 Lake Park",date: "2016-10-04"},{name: "Jon Snow19",age: 26,address: "Ottawa No. 2 Lake Park",date: "2016-10-04"},{name: "Jon Snow20",age: 26,address: "Ottawa No. 2 Lake Park",date: "2016-10-04"},{name: "Jon Snow21",age: 26,address: "Ottawa No. 2 Lake Park",date: "2016-10-04"},{name: "Jon Snow22",age: 26,address: "Ottawa No. 2 Lake Park",date: "2016-10-04"},{name: "Jon Snow23",age: 26,address: "Ottawa No. 2 Lake Park",date: "2016-10-04"},{name: "Jon Snow24",age: 26,address: "Ottawa No. 2 Lake Park",date: "2016-10-04"}]this.search()},search () {// 這里是對表格中出現的所有數據進行的模糊搜索,只要包含search的搜索條件,均返回其結果!!this.filterData = []this.allTableData.filter(item => {let flag = trueObject.keys(item).map(key => {if (JSON.stringify(item[key]) && JSON.stringify(item[key]).toLowerCase().indexOf(this.searchForm.name.toLowerCase()) !== -1 && flag) {this.filterData.push(item)flag = false}})})this.showCurrentPage(this.filterData)},showCurrentPage (params) {this.tCurrentPage = 1this.pageSize = parseInt(this.scrollerHeight / 48) // 48代表的是當前table的tr高度, 【 當前頁的條數 = 當前獲取的高度 / tr的高度 】// 保存所有條數this.dataCount = params.length// 初始化顯示,小于每頁顯示條數,全顯,大于每頁顯示條數,取前每頁條數顯示if (this.dataCount < this.pageSize) {// 當total< pageSize,應該只有[pageSize]this.pageSize = this.dataCountthis.pageSizeOpts = [this.dataCount]this.data = params} else {this.pageSizeOpts = [this.pageSize, this.pageSize + 5, this.pageSize + 10]this.data = params.slice(0, this.pageSize)}},changepage (index) {this.tCurrentPage = indexvar _start = (index - 1) * this.pageSizevar _end = index * this.pageSizethis.data = this.filterData.slice(_start, _end)},changeSize (size) {this.pageSize = sizevar _start = (this.tCurrentPage - 1) * sizevar _end = this.tCurrentPage * sizethis.data = this.filterData.slice(_start, _end)},listenResizeFn () {console.log('處理窗口縮放時要處理的邏輯操作!')this.scrollerHeight = window.innerHeight - 130this.showCurrentPage(this.allTableData)},} } </script>
處理窗口縮放

我們習慣性使用下面的方法:

window.onresize = () => {return (() => {// 縮放執行的操作!!}) }

但是上述方法在onresize被多次調用時,會導致觸發執行的相關操作未生效!這是因為onresize本身就是一個回調函數,當其改變的時候,前一個就會被覆蓋。

解決辦法:事件監聽 addEventListener(event , function, useCapture)
其中, event: 監聽的事件,不需要加前綴;function: 事件觸發之后調用的函數;useCapture: true為捕獲,false為冒泡

mounted () {// 添加監聽事件listenResizeFn, 用來監聽頁面高度的變化window.addEventListener("resize", this.listenResizeFn) }, beforeDestroy () {// 移除綁定的listenResizeFn事件監聽window.removeEventListener('resize', this.listenResizeFn) }, methods: {listenResizeFn () {console.log('處理窗口縮放時要處理的邏輯操作!')} }

總結

以上是生活随笔為你收集整理的iview-table实现自适应高度渲染表格条数的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 日本十大三级艳星 | 狠狠操精品 | 欧美综合视频 | 天天做夜夜爽 | 精品国偷自产一区二区三区 | 黄色日皮视频 | 青青草原亚洲 | 伊人久久激情 | 午夜在线看片 | 日韩资源在线 | 欧美日韩在线播放 | 日韩五十路 | 黄瓜污视频 | 久久综合综合 | 国产欧美一区二区三区精华液好吗 | 一个人看的毛片 | 免费精品在线观看 | 色人阁婷婷 | 亚洲区欧美 | 国产专区一区二区三区 | 日本色网址 | 亚洲免费色 | 捆绑调教在线观看 | 一本色道久久综合亚洲精品酒店 | 黄色一级视频在线观看 | 日韩青青草 | 日本不卡视频一区二区三区 | 97人人模人人爽人人少妇 | 老色批永久免费网站www | 色狠狠一区二区 | 精品国产一区在线 | 午夜999| 色88久久久久高潮综合影院 | 激情六月天婷婷 | 国产精品美女在线观看 | 日本在线第一页 | 亚洲欧美一二三区 | 久久偷看各类女兵18女厕嘘嘘 | 中日黄色片| 国产精品丝袜黑色高跟鞋的设计特点 | 亚洲AV无码国产精品播放在线 | 日韩欧美在线精品 | 成人性免费视频 | 国产综合自拍 | 爱啪啪影视 | 国产一级免费在线观看 | 欧美a天堂 | 女人叫床高潮娇喘声录音mp3 | 一区二区日韩精品 | 国产性―交一乱―色―情人 | 91亚洲精品国偷拍自产在线观看 | 九九九热 | 欧美巨大另类极品videosbest | 强乱中文字幕 | 亚洲涩涩| 制服.丝袜.亚洲.另类.中文 | 草碰在线 | 五月婷婷激情四射 | 久久高清免费视频 | 亚洲aaaaaa| 国产精品亚洲AV色欲三区不卡 | 免费香蕉视频 | 日本电影大尺度免费观看 | 一区二区在线观看免费 | 亚欧洲精品在线视频免费观看 | wwwwxxxxx日本 | 成人交性视频免费看 | 香蕉久久夜色 | 日韩高清不卡一区 | 欧美激情 在线 | 欧美呦交 | 中文字幕成人av | 69天堂网 | 久草三级| 222aaa| 好吊色视频一区二区三区 | 欧美a∨亚洲欧美亚洲 | 高清久久久久久 | 天天综合网久久 | 黄色一级大片 | 中文字幕狠狠干 | 久久人人爽人人 | 致命弯道8在线观看免费高清完整 | 男女性杂交内射妇女bbwxz | 性高湖久久久久久久久aaaaa | 午夜免费播放观看在线视频 | 日韩va亚洲va欧美va久久 | 天天干夜夜操视频 | 日本成人在线播放 | 阿娇全套94张未删图久久 | 成年人免费在线观看视频网站 | 亚洲不卡一区二区三区 | ass日本寡妇pics| 午夜福利三级理论电影 | 永久免费精品 | 国产精品扒开腿做爽爽爽a片唱戏 | 日韩欧美国产成人 | 综合狠狠开心 | 成年人午夜影院 |