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

umy-ui —— table檢索字段自動滾到指定位置并高亮

這篇具有很好參考價值的文章主要介紹了umy-ui —— table檢索字段自動滾到指定位置并高亮。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

需求:

umy-ui table,vue,vue.js,前端,javascript

?通過input輸入框,輸入要查找的數(shù)據(jù)字段,點擊確定可以定位到查找的那行數(shù)據(jù)、并把改行顯示高亮。

?

實現(xiàn)思路:

安裝 umy-ui 和 babel插件:(el-table可直接忽略不安裝)

npm install umy-ui
npm install babel-plugin-component -D

main.js中引入:

import 'umy-ui/lib/theme-chalk/index.css'
import { UTableColumn, UTable, UxGrid, UxTableColumn } from 'umy-ui' // 按需引入組件
Vue.use(UTableColumn)
Vue.use(UTable)
Vue.use(UxGrid)
Vue.use(UxTableColumn)

babel.config.js中添加:

'plugins': [
    [
      'component',
      {
        'libraryName': 'umy-ui',
        'styleLibraryName': 'theme-chalk'
      }
    ]
  ]

vue代碼實現(xiàn):

umy-ui table,vue,vue.js,前端,javascript

?

?首先:

u-table中必須添加的屬性:


1.use-virtual? 使用虛擬表格

2.:row-height="30"? ? 設(shè)置每個table行的行高(這里一定要與后面尋找行所乘的倍數(shù)一一對應(yīng))

3.:height="600"? ? 設(shè)置u-table表格高度

4.ref="stuList"? ?

以上1、2、3 同時調(diào)價表示使用虛擬列。

然后:

?思路:存放table表格的數(shù)據(jù)是stuList集合,查找某一個學(xué)號的位置,實際上是查找該條數(shù)據(jù)在stuList的index索引是多少,也就是該條數(shù)據(jù)在stuList集合中是第幾條數(shù)據(jù)。然后通過scrollTop向上滑動指定高度,也就是先了數(shù)據(jù)定位功能。

?其次:(看代碼)

umy-ui table,vue,vue.js,前端,javascript

?this.$refs.stuList.$refs.singleTable.$refs.bodyWrapper.scrollTop = this.input * 30

?這句標(biāo)紅的代碼,需要你查看自己項目中具體是什么樣的:

查找思路:

通過u-table綁定的@row-click="selectRow"事件:

在selectRow方法中打出this

umy-ui table,vue,vue.js,前端,javascript

?頁面上表格數(shù)據(jù)隨便點擊某一行,控制臺直接打出

umy-ui table,vue,vue.js,前端,javascript

?找到table表格中 ref="stuList"綁定的bodyWrapper,然后找到下面的scrollTop

然后拼接出來 等于 查找元素index × 表格綁定的row-height 就可以定位到數(shù)據(jù)的位置。

最后:

給改行加上高亮樣式:

u-table 屬性: row-style="selectedHighlight"

umy-ui table,vue,vue.js,前端,javascript

較完整參考代碼:

<template>
  <div class="app-container">
    <el-row :gutter="18">
    <el-dialog
        title="test"
        visible="true"
        width="30%"
        center
      >
        <el-row>
          <el-col :span="12">
            <el-input v-model="input" style="width:250px" placeholder="請輸入內(nèi)容" />
          </el-col>
          <el-col :span="4">
            <el-button @click="selectRowwwwww">定位</el-button>
          </el-col>
          <el-col :span="4">
            <el-button>下一個</el-button>
          </el-col>
          <el-col :span="4">
            <el-button>上一個</el-button>
          </el-col>
        </el-row>

        <u-table
          ref="stuList"
          v-loading="loading"
          :data="stuList"
          use-virtual
          :row-style="selectedHighlight"
          :row-height="30"
          :height="600"
          @row-click="selectRow"
        >
          <u-table-column type="selection" width="45" align="center" fixed="left" />
          <u-table-column label="序號" width="480px" align="center" fixed="left">
            <template slot-scope="scope">
              <span>{{ scope.row.idserial }}</span>
            </template>
          </u-table-column>
        </u-table>
      </el-dialog>
</el-row>
  </div>
</template>
<script>
import {getStuTest} from '@/api'
export default {
  name: 'Student',
  data() {
    return {
      attr: [],
      input: 0,
      stuList: []
    },
mounted() {
    this.getStuTest()
},
methods: {
// *******************************************************
    selectRowwwwww() {
      this.attr = []
      for (var i = 0; i < this.stuList.length; i++) {
        if (this.stuList[i].idserial === this.input) {
          this.attr.push(i)
        }
      }

      this.$refs.stuList.$refs.singleTable.$refs.bodyWrapper.scrollTop = this.input * 30
    },
    // *******************************************************


    // *******************************************************
    selectedHighlight({ row, rowIndex }) {
      if (this.attr.length > 0 && rowIndex === this.attr[0]) {
        console.log('************添加高亮樣式***************')
        this.$refs.stuList.$refs.singleTable.setCurrentRow(row)
        return { 'background-color': '#67c23a', 'color': '#fff' }
      }
    },
    // *******************************************************

    // *******************************************************
    selectRow(row, col, event) {
      console.log('+++++>', this)
    },
    // *******************************************************

    getStuTest() {
      getStuTest().then(response => {
        this.stuList = response.data
      })
    }
  }
}
</script>
<style>
.el-table .warning-row {
    background: oldlace;
  }

  .el-table .success-row {
    background: #f0f9eb;
  }
.el-dialog__body {
  padding: 0px 20px!important;
}
</style>

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

到了這里,關(guān)于umy-ui —— table檢索字段自動滾到指定位置并高亮的文章就介紹完了。如果您還想了解更多內(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ìn)行投訴反饋,一經(jīng)查實,立即刪除!

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

相關(guān)文章

  • Java查詢es數(shù)據(jù),根據(jù)指定id檢索(in查詢),sql權(quán)限過濾,多字段匹配檢索,數(shù)據(jù)排序

    Java集成Elasticsearch,進(jìn)行索引數(shù)據(jù)查詢,并進(jìn)行sql權(quán)限過濾,指定id檢索(in查詢),多字段匹配檢索,數(shù)據(jù)排序。由于權(quán)限過濾是根據(jù)sql語句判斷當(dāng)前用戶或其部門可查詢的數(shù)據(jù),所以采用以下方法: 1.通過sql過濾出當(dāng)前用戶可查詢的數(shù)據(jù)id集合idsList; 2.將當(dāng)前用戶可查詢的

    2024年02月22日
    瀏覽(21)
  • git 回滾到指定版本

    git 回滾到指定版本

    git 回退到指定版本步驟: 把你想回退的版本的commit id和最新版本的commit id記下來 然后用命令git reset --hard 老版本的commit id 再git reset --mix 最新版本的commit id 再push 就ok了 記住當(dāng)前版本 和 要回滾的舊版本號 執(zhí)行命令 進(jìn)行本地回滾 并提交代碼到 遠(yuǎn)程 再執(zhí)行操作 push 到遠(yuǎn)程即

    2024年02月11日
    瀏覽(25)
  • element-ui table 設(shè)置表格滾動條位置

    場景: 在切換不同頁面時(被 keep-alive 緩存的組件間切換),頁面中的element-ui table的滾動條位置沒有停留在原來的位置。目前需要切換不同的頁面返回來后,滾動條保持在原來的位置。 代碼:

    2024年02月11日
    瀏覽(30)
  • element-ui table 指定單元格動態(tài)字體顏色設(shè)置

    element-ui table 指定單元格動態(tài)字體顏色設(shè)置 根據(jù)后端返回的值,動態(tài)的自動變更element-ui table 指定單元格的字體的顏色或者整行的顏色值 顯示效果 去掉:? columnIndex === 4 即不指定某個單元格

    2024年02月16日
    瀏覽(23)
  • Unity開發(fā)筆記:截取指定位置含有UI的場景截圖并輸出

    Unity開發(fā)筆記:截取指定位置含有UI的場景截圖并輸出

    學(xué)習(xí)記錄整理,自用,也希望能幫助到有相同需求的人。 如果直接截全圖: 截取指定位置含有UI的場景截圖: 例如這種情況下只想要中間的: UI所在的Canvas設(shè)置為RenderMode.ScreenSpaceCamera并掛載相機(jī),然后設(shè)置該相機(jī)的渲染RenderTexture并開始render,注意這里渲染是從屏幕中心擴(kuò)展

    2024年02月13日
    瀏覽(21)
  • 如何使用js自動點擊電腦屏幕指定位置

    可以使用 JavaScript 模擬鼠標(biāo)點擊事件來實現(xiàn)自動點擊屏幕指定位置。 你可以使用 document.createEvent() 方法創(chuàng)建一個 \\\"MouseEvents\\\" 事件對象,然后使用 dispatchEvent() 方法將該事件分派到文檔中的元素上。 下面是一個簡單的示例,展示了如何在屏幕上的 (100, 100) 位置自動點擊一次。

    2024年02月11日
    瀏覽(25)
  • QChart實現(xiàn)ui界面上指定位置餅狀圖、圓環(huán)圖的繪制

    QChart實現(xiàn)ui界面上指定位置餅狀圖、圓環(huán)圖的繪制

    近期開發(fā)遇上了繪制餅圖的需求,筆者前期使用QCustomPlot圖形庫進(jìn)行一些圖形組件的開發(fā)是非常方便的,但是這個庫沒有實現(xiàn)餅圖的繪制,所以后面是使用QChart來實現(xiàn)餅狀圖的開發(fā)。本文主要講述了使用Qt下的Charts 模塊來進(jìn)行餅圖的繪制,并結(jié)合Qt Creator里面的示例,在這里編

    2024年02月08日
    瀏覽(61)
  • Unity虛擬相機(jī)Cinemachine-實現(xiàn)相機(jī)自動移動到指定位置

    Unity虛擬相機(jī)Cinemachine-實現(xiàn)相機(jī)自動移動到指定位置

    介紹兩種方法, 第一種使用虛擬相機(jī)自帶DollyCart和DollyTrack進(jìn)行設(shè)置; 第二種使用時間線Timeline和DollyTrack進(jìn)行設(shè)置 1.首先添加圖中三個虛擬相機(jī) 2.點擊 DollyTrack,添加點,設(shè)置軌道 3.調(diào)整點的位置,使軌道在相機(jī)移動的起點和終點保持平滑 4.設(shè)置Dolly Cart,將軌道拖拽到Dolly

    2024年01月25日
    瀏覽(27)
  • git 從一個commit節(jié)點拉出一個分支,當(dāng)前分支代碼回滾到指定commit節(jié)點

    1.從一個commit節(jié)點拉出一個分支 a.切到commit_id b. 創(chuàng)建新分支 c. 推送到遠(yuǎn)程 2.當(dāng)前分支代碼回滾到指定commit節(jié)點 a.本地代碼回滾到指定提交節(jié)點 b.提交到倉庫

    2024年02月11日
    瀏覽(98)
  • vue2在element UI的table中給指定列添加圓點標(biāo)志,鼠標(biāo)懸浮出提示信息

    vue2在element UI的table中給指定列添加圓點標(biāo)志,鼠標(biāo)懸浮出提示信息

    要求在列表數(shù)據(jù)給指定數(shù)據(jù)添加一些標(biāo)志,鼠標(biāo)懸浮提示指定數(shù)據(jù).左側(cè)為標(biāo)志截圖.右側(cè)為懸浮提示截圖. 在template中 想要添加標(biāo)志的那一列 添加圓點和懸浮提示信息兩個節(jié)點,并添加單元格進(jìn)入 退出事件兩個事件. 具體使用時樣式細(xì)微處自行調(diào)節(jié) 給單元格移入事件設(shè)

    2024年02月06日
    瀏覽(26)

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

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

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包