<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當(dāng)前位置: 首頁(yè) - 科技 - 知識(shí)百科 - 正文

        VUE element-ui 寫個(gè)復(fù)用Table組件的示例代碼

        來源:懂視網(wǎng) 責(zé)編:小采 時(shí)間:2020-11-27 22:25:29
        文檔

        VUE element-ui 寫個(gè)復(fù)用Table組件的示例代碼

        VUE element-ui 寫個(gè)復(fù)用Table組件的示例代碼:餓了么的table組件功能很強(qiáng)大,對(duì)于項(xiàng)目中的各種表格基本夠用,但是……個(gè)人對(duì)于它以列為單位的操作不習(xí)慣 =。=所以改成了另一種方式(我不會(huì)告訴你其實(shí)本質(zhì)沒變)。 項(xiàng)目中表格較多,所以復(fù)用性最重要 步驟一 先來個(gè)基本的表格展示 官例的tableDat
        推薦度:
        導(dǎo)讀VUE element-ui 寫個(gè)復(fù)用Table組件的示例代碼:餓了么的table組件功能很強(qiáng)大,對(duì)于項(xiàng)目中的各種表格基本夠用,但是……個(gè)人對(duì)于它以列為單位的操作不習(xí)慣 =。=所以改成了另一種方式(我不會(huì)告訴你其實(shí)本質(zhì)沒變)。 項(xiàng)目中表格較多,所以復(fù)用性最重要 步驟一 先來個(gè)基本的表格展示 官例的tableDat

        餓了么的table組件功能很強(qiáng)大,對(duì)于項(xiàng)目中的各種表格基本夠用,但是……個(gè)人對(duì)于它以列為單位的操作不習(xí)慣 =。=所以改成了另一種方式(我不會(huì)告訴你其實(shí)本質(zhì)沒變)。

        項(xiàng)目中表格較多,所以復(fù)用性最重要

        步驟一

        先來個(gè)基本的表格展示

        官例的tableData

        tableData: [{
         date: '2016-05-02',
         name: '王小虎',
         address: '上海市普陀區(qū)金沙江路 1518 弄'
        }, {
         date: '2016-05-04',
         name: '王小虎',
         address: '上海市普陀區(qū)金沙江路 1517 弄'
        }, {
         date: '2016-05-01',
         name: '王小虎',
         address: '上海市普陀區(qū)金沙江路 1519 弄'
        }, {
         date: '2016-05-03',
         name: '王小虎',
         address: '上海市普陀區(qū)金沙江路 1516 弄'
        }]
        

        table.vue

        <template>
         <el-table :data="tableData" border>
         <el-table-column prop="date" label="日期"></el-table-column>
         <el-table-column prop="name" label="姓名"></el-table-column>
         <el-table-column prop="address" label="地址"></el-table-column>
         </el-table>
        </template>
        

        步驟二

        簡(jiǎn)化一下表格:

        //table.vue
        <template>
         <el-table :data="tableData" border>
         <el-table-column v-for="(item,key) in tableKey" 
         :key="key"
         :prop="item.value"
         :label="item.name"></el-table-column>
         </el-table>
        </template>
        <script>
        export default{
         name: 'table',
         data(){
         return{
         tableData:[...],
         tableKey: [{
         name: 'date',
         value: '日期'
         },{
         name: '姓名',
         value: 'name'
         },{
         name: '地址',
         value: 'address'
         }]
         }
         }
        }
        </script>
        

        步驟三

        復(fù)用table.vue就是————給它數(shù)據(jù)的同時(shí)告訴它我的字段名唄

        新建一個(gè)父組件sl_table.vue

        //sl_table.vue
        <template>
         <sl-table :tableData="tableData" :tableKey="tableKey"></sl-table>
        </template>
        <script>
        import Table from '@/components/table'
        export default{
         name: 'sl-table',
         data(){
         return {
         tableData: [...]
         tableKey: [{
         name: 'date',
         value: '日期'
         },{
         name: '姓名',
         value: 'name'
         },{
         name: '地址',
         value: 'address'
         }]
         }
         },
         components: {
         'sl-table': Table
         }
        }
        </script>
        

        table.vue就更簡(jiǎn)單了

        //table.vue
        <template>
         <el-table :data="tableData" border>
         <el-table-column v-for="(item,key) in tableKey" 
         :key="key"
         :prop="item.value"
         :label="item.name"></el-table-column>
         </el-table>
        </template>
        <script>
        export default{
         name: 'table',
         data(){
         return{
         
         }
         },
         props:['tableData','tableKey'],
        }
        </script>
        

        步驟四

        可以根據(jù)需求修改table的形式

        列寬度

        這個(gè)較為簡(jiǎn)單,可以直接加個(gè)屬性

        //sl_table.vue
        ...
         data(){
         return {
         tableData: [...]
         tableKey: [{
         name: 'date',
         value: '日期',
         width: 80
         },{
         name: '姓名',
         value: 'name',
         width: 80
         },{
         name: '地址',
         value: 'address'
         }]
         }
         },
        ...
        

        table.vue

        //table.vue
        ...
        <el-table-column v-for="(item,key) in tableKey" 
        :key="key"
        :prop="item.value"
        :label="item.name"
        :width="item.width"></el-table-column>
        ...
        

        自定義模板列

        如果我們需要告訴組件哪個(gè)是自定義的列,所以添加一個(gè)屬性operate

        table.vue

        <el-table-column v-for="(item,key) in tableKey" 
        v-if="!item.operate"
        :key="key"
        :prop="item.value"
        :label="item.name"
        :width="item.width"></el-table-column>
        
        <!-- 自定義 -->
        <el-table-column v-else>
         <template scope="scope">
         <slot :name="item.value" :$index="scope.$index" :row="scope.row"></slot>
         </template>
        </el-table-column>
        //sl_table.vue
        <sl-table :tableData="tableData" :tableKey="tableKey">
         <template slot="date" scope="scope">
         <span>{{ scope.row.date | DateFilter }}</span>
         </template>
        </sl-table>
        ...
         data(){
         return {
         tableData: [...]
         tableKey: [{
         name: 'date',
         value: '日期',
         operate: true
         },{
         name: '姓名',
         value: 'name',
         operate: false
         },{
         name: '地址',
         value: 'address',
         operate: false
         }]
         }
         },
         filters: {
         DateFilter(){...}
         }
        ...
        
        

        表格展開行

        類似寬度,只要sl_table.vue傳入一個(gè)isExpand的屬性。這里加個(gè)每次只能展開一行的效果:

        //sl_table.vue
        
        <sl-table :tableData="tableData" :tableKey="tableKey" :isExpand="true" :isExpandOnly="true">
         <template slot="expand" scope="scope">
         {{...expand something}}
         </template>
         ...
        </sl-table>
        

        table.vue

        //table.vue
        <el-table :data="tableData" border @expand="handleExpand" ref="raw_table">
         <el-table-column v-if="isExpand" type="expand">
         <template scope="scope">
         <slot name="expand" :$index="scope.$index" :row="scope.row"></slot>
         </template>
         </el-table-column>
        </el-table>
        ...
        props: ['tableData','tableKey','isExpand','isExpandOnly'],
        methods: {
         handleExpand(row,is_expand){
         if(this.isExpand && this.isExpandOnly){
         this.$refs.raw_table.store.states.expandRows = expanded ? [row] : [] 
         }
         }
        }

        其他的(排序、多選)操作也是類似添加。。多不贅述。

        聲明:本網(wǎng)頁(yè)內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        VUE element-ui 寫個(gè)復(fù)用Table組件的示例代碼

        VUE element-ui 寫個(gè)復(fù)用Table組件的示例代碼:餓了么的table組件功能很強(qiáng)大,對(duì)于項(xiàng)目中的各種表格基本夠用,但是……個(gè)人對(duì)于它以列為單位的操作不習(xí)慣 =。=所以改成了另一種方式(我不會(huì)告訴你其實(shí)本質(zhì)沒變)。 項(xiàng)目中表格較多,所以復(fù)用性最重要 步驟一 先來個(gè)基本的表格展示 官例的tableDat
        推薦度:
        標(biāo)簽: VUE table組件 element-ui
        • 熱門焦點(diǎn)

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 精品亚洲国产成人| 亚洲高清中文字幕综合网| 亚洲av永久无码| 亚洲AV永久精品爱情岛论坛 | 亚洲精品国产免费| 久久久99精品免费观看| 久久精品国产亚洲AV香蕉| 精品亚洲视频在线| 毛片无码免费无码播放| 亚洲网站在线观看| 日韩免费高清一级毛片| 亚洲情a成黄在线观看| 中文字幕乱码免费看电影| 亚洲AV第一页国产精品| 免费视频爱爱太爽了| 亚洲午夜精品一区二区麻豆| 韩国二级毛片免费播放| 又大又硬又粗又黄的视频免费看| 国产亚洲精品资在线| 日本免费在线观看| 亚洲中文无码a∨在线观看| 天天看免费高清影视| 成人免费网站久久久| 久久亚洲国产欧洲精品一| 大片免费观看92在线视频线视频| 国产av无码专区亚洲av果冻传媒 | 午夜亚洲AV日韩AV无码大全| **aaaaa毛片免费同男同女| 亚洲日本成本人观看| 亚洲国产成人久久综合野外| 久久久久免费精品国产小说| 中国亚洲呦女专区| 亚洲一级特黄大片在线观看| 中文字幕在线免费| 黄色免费网址在线观看| 亚洲AV人无码综合在线观看| 在线成人a毛片免费播放| a级成人毛片免费图片| 亚洲中文字幕无码中文| 亚洲中文字幕无码不卡电影| 噼里啪啦电影在线观看免费高清|