• 【APP VTable】和市面上的 Table 组件一样,都是接收表格[] 以及数据源[]


    在这里插入图片描述

    博主:_LJaXi Or 東方幻想郷
    专栏: uni-app | 小程序开发
    开发工具HBuilderX

    这里写目录标题

    表格组件

    <template>
    	<view class="scroll-table-wrapper">
    		<view class="scroll-table-container">
    			<table class="scroll-table">
    				<thead>
    					<tr>
    						<th v-for="(item, index) in columns" :key="index">
    							{{ item.title }}
    						th>
    					tr>
    				thead>
    				
    				<tbody v-if="dataSource.length > 0">
    					<tr v-for="(row, rowIndex) in dataSource" :key="rowIndex">
    						<td v-for="(cell, cellIndex) in columns" :key="cellIndex">
    							<view v-if="cell.title !== '操作'"
    								:style="{'width': cell.width, 'white-space': cell.width ? 'normal' : 'nowrap', 'text-align': 'center'}"
    								@click="handleArrowClick(row, cell, type)">
    								{{ row[cell.dataIndex] || '' }}
    							view>
    							<view v-else>
    								<button @click="handleButtonClick(row)" class="op-after-0">{{operateTitle}}button>
    							view>
    						td>
    					tr>
    				tbody>
    				<tbody v-else>
    					<tr style="text-align: center;">
    						<td :colspan="columns.length">暂无数据td>
    					tr>
    				tbody>
    			table>
    		view>
    	view>
    template>
    
    <script>
    	export default {
    		/**
    		 * @author _LJaXi
    		 * @columns 表头内容
    		 * @dataSource 表格数据源
    		 * @operateTitle 操作按钮title
    		 * @updatehandleOperate 操作栏按钮获取row
    		 * @updateshow 单击单元格获取row
    		 */
    		props: {
    			columns: {
    				type: Array,
    				default: []
    			},
    			dataSource: {
    				type: Array,
    				default: []
    			},
    			// 状态
    			type: {
    				type: String,
    				default: ''
    			},
    			operateTitle: {
    				type: String,
    				default: '操作'
    			}
    		},
    		methods: {
    			handleArrowClick(item, type) {
    				this.$emit('update:show', {
    					item,
    					type: this.type
    				})
    			},
    			handleButtonClick(item) {
    				this.$emit('update:handleOperate', {
    					item
    				})
    			}
    		}
    	}
    script>
    
    <style lang="less" scoped>
    	@import url('index.less');
    style>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52
    • 53
    • 54
    • 55
    • 56
    • 57
    • 58
    • 59
    • 60
    • 61
    • 62
    • 63
    • 64
    • 65
    • 66
    • 67
    • 68
    • 69
    • 70
    • 71
    • 72
    • 73
    • 74
    • 75
    • 76
    • 77
    • 78
    • 79
    • 80
    • 81
    • 82
    • 83
    • 84

    USE

    <VTable 
    	:columns="maintenanceFeedbackTableData" 
    	:dataSource="tableData"
    	@update:show="handleShow" 
    	@update:handleOperate="handleOperate" 
    />
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    总之这个表格和市面上的没有什么不同,都是自适应的,这个我是在APP里面写的一个表格,不知道为什么APP会让写表格…

  • 相关阅读:
    Java 基础知识 V 之 基础扩展
    memcached的大key存储与slab钙化问题踩坑
    R语言统计—比较定性资料样本频率样本量的计算
    redis过期key的清理/删除策略
    postman打开后,以前的接口记录不在,问题解决
    苹果app开发流程详解​
    游戏思考15:全区全服和分区分服的思考
    Java Web 7 JavaScript 7.9 RegExp对象
    工作6年,月薪3W,1名PM的奋斗史
    怎样提取视频中的音频?分享一个一学就会的方法~
  • 原文地址:https://blog.csdn.net/Dongfang_project/article/details/134008658