最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Vue多選列表組件深入詳解

 更新時(shí)間:2021年03月02日 15:56:35   作者:yukiwu  
這篇文章主要介紹了Vue多選列表組件深入詳解,這個(gè)是vue的基本組件,有需要的同學(xué)可以研究下

多選列表 (Multi-Select) 是一種將所有選項(xiàng)列出,并允許用戶利用 Ctrl/Shift 鍵進(jìn)行多選的 UI 元素。這是一種常見的設(shè)計(jì)元素。有時(shí)候?yàn)榱斯?jié)省空間,我們會將選項(xiàng)折疊于 Combo Box 中。為了方便用戶操作,這個(gè)組件還將添加 Select All 和 Clear All 兩個(gè)按鈕,允許用戶快速選擇或清除選擇。這個(gè) UI 元素曾被運(yùn)用于 Correlation Plot App 中。

注冊組件

注冊 Multi-Select 組件,簡單來說就是復(fù)制粘貼已封裝好的代碼部分。此處建議注冊全局組件。

設(shè)計(jì)該元素的時(shí)候考慮了兩種模式:第一種是每次點(diǎn)擊新選項(xiàng)將保留舊選項(xiàng)并添加新選項(xiàng),如上述示例圖形。這種是較為常見的一種方式。第二種是每次點(diǎn)擊新選項(xiàng)則清除舊選項(xiàng)僅保留新選項(xiàng)。若使用這種方式進(jìn)行多選,則需要利用Ctrl/Shift鍵。這種設(shè)計(jì)能便于用戶在每一次的點(diǎn)擊中消除舊選項(xiàng)。若使用第二方式,需要替換事件@click.exact="AddToOrDeleteFromSelectedColumns"@click.exact="ClickOnColumnListItem"

<script type="text/x-template" id="multi-select-template">
…
   <tr v-for = "(item,index) in columns" 
     @click.exact="AddToOrDeleteFromSelectedColumns"
     @click.shift.exact="AddMultipleToSelectedColumns"
     @click.ctrl.exact="AddToOrDeleteFromSelectedColumns"
     :title="function(item){if(item.longname){return 'Short Name: ' + item.name + '\n----------------\n' + item.longname}else{return item.name}}(item)"
     class="column-list-entry">
   ...
   </tr>
</script>
<script>
Vue.component("multi-select", {
  template: "#multi-select-template",
…
</script>

調(diào)用組件

直接添加自定義標(biāo)簽 調(diào)用組件。

<multi-select :legend_name="legend_name"
       :columns="columns"
       :selected_columns="selected_columns"
       @update_selected_columns="onSelectedColumnsChange">
</multi-select>

傳遞數(shù)據(jù)

最后還需要對組件傳遞數(shù)據(jù)。我們可以利用 v-bind 動態(tài)綁定數(shù)據(jù)到父級組件的數(shù)據(jù)中。

props 中 legend_name 綁定 Multi-Select 的所需顯示的名稱,columns 綁定 Multi-Select 的選項(xiàng), selected_columns 綁定當(dāng)前的已選項(xiàng)。另外我們還需要在父級實(shí)例中定義事件 “onSelectedColumnsChange”,用于刷新 Multi-Select 組件的顯示。

data: function(){
   return {
     legend_name: "Input Columns",
     columns: 
     [
       {"name":"A","longname":"Copper"},
       {"name":"B","longname":"Aluminum Aluminum"},
       {"name":"C","longname":"Calcium"},
       {"name":"D","longname":"Calcium"},
   ],
     selected_columns: [],
   }
 },
... 
methods:{ 
   onSelectedColumnsChange:function(new_columns) {
     this.selected_columns = new_columns;
   },
 },
...

到此這篇關(guān)于Vue多選列表組件深入詳解的文章就介紹到這了,更多相關(guān)Vue多選列表組件內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Axios學(xué)習(xí)筆記之使用方法教程

    Axios學(xué)習(xí)筆記之使用方法教程

    axios是用來做數(shù)據(jù)交互的插件,最近正在學(xué)習(xí)axios,所以想著整理成筆記方便大家和自己參考學(xué)習(xí),下面這篇文章主要跟大家介紹了關(guān)于Axios使用方法的相關(guān)資料,需要的朋友們下面來一起看看吧。
    2017-07-07
  • 詳解如何使用vue實(shí)現(xiàn)頁面訪問攔截

    詳解如何使用vue實(shí)現(xiàn)頁面訪問攔截

    這篇文章主要為大家詳細(xì)介紹了如何使用vue實(shí)現(xiàn)頁面訪問攔截功能,文中的示例代碼講解詳細(xì),具有一定的參考價(jià)值,需要的可以了解一下
    2023-08-08
  • Vue瀏覽器緩存sessionStorage+localStorage+Cookie區(qū)別解析

    Vue瀏覽器緩存sessionStorage+localStorage+Cookie區(qū)別解析

    這篇文章主要介紹了Vue瀏覽器緩存sessionStorage+localStorage+Cookie區(qū)別解析,本文通過示例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-09-09
  • 解決vue項(xiàng)目運(yùn)行npm run serve報(bào)錯(cuò)的問題

    解決vue項(xiàng)目運(yùn)行npm run serve報(bào)錯(cuò)的問題

    這篇文章主要介紹了解決vue項(xiàng)目運(yùn)行npm run serve報(bào)錯(cuò)的問題,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-10-10
  • vue頁面右下角添加懸浮按鈕組件的方法代碼

    vue頁面右下角添加懸浮按鈕組件的方法代碼

    這篇文章主要介紹了vue頁面右下角添加懸浮按鈕組件的方法代碼,在Vue項(xiàng)目中,通過在頂層路由文件中添加代碼,可以實(shí)現(xiàn)頁面左下角懸浮按鈕的功能,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2024-11-11
  • Vue2為何能通過this訪問到data與methods的屬性

    Vue2為何能通過this訪問到data與methods的屬性

    這篇文章主要介紹了Vue2為何能通過this訪問到data與methods的屬性,文章圍繞主題展開詳細(xì)的內(nèi)容戒殺,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-09-09
  • vue實(shí)現(xiàn)彈窗拖拽效果

    vue實(shí)現(xiàn)彈窗拖拽效果

    這篇文章主要為大家詳細(xì)介紹了vue實(shí)現(xiàn)彈窗拖拽效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-09-09
  • Vue項(xiàng)目中實(shí)現(xiàn)無感Token刷新的示例

    Vue項(xiàng)目中實(shí)現(xiàn)無感Token刷新的示例

    在前端項(xiàng)目中,Token用于用戶認(rèn)證和權(quán)限管理,文章介紹了在Vue項(xiàng)目中實(shí)現(xiàn)Token的無感刷新,包括Token刷新的原理、攔截器的應(yīng)用和處理Token過期的方法,感興趣的可以了解一下
    2024-11-11
  • vue實(shí)現(xiàn)的封裝全局filter并統(tǒng)一管理操作示例

    vue實(shí)現(xiàn)的封裝全局filter并統(tǒng)一管理操作示例

    這篇文章主要介紹了vue實(shí)現(xiàn)的封裝全局filter并統(tǒng)一管理操作,結(jié)合實(shí)例形式詳細(xì)分析了vue封裝全局filter及相關(guān)使用技巧,需要的朋友可以參考下
    2020-02-02
  • vue?elementui?實(shí)現(xiàn)搜索欄子組件封裝的示例代碼

    vue?elementui?實(shí)現(xiàn)搜索欄子組件封裝的示例代碼

    這篇文章主要介紹了vue?elementui?搜索欄子組件封裝,本文通過示例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-06-06

最新評論

自贡市| 嫩江县| 张家川| 平乡县| 庄河市| 凉山| 合肥市| 吉首市| 保德县| 鄯善县| 乐安县| 遂川县| 汶上县| 宁津县| 左云县| 吕梁市| 南宫市| 曲阳县| 宜君县| 巴塘县| 西峡县| 睢宁县| 沿河| 齐齐哈尔市| 黄浦区| 华蓥市| 通化市| 高尔夫| 黄石市| 凤翔县| 辽中县| 西昌市| 申扎县| 明光市| 洛隆县| 塔河县| 瓦房店市| 通城县| 浪卡子县| 合肥市| 盘锦市|