template-table.vue 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171
  1. <script>
  2. import { list, item } from "@/api/system/table-template";
  3. export default {
  4. name: "TableTemplateTable",
  5. data() {
  6. return {
  7. from: { input: "", select: "" },
  8. options: [
  9. {
  10. value: "选项1",
  11. label: "黄金糕",
  12. },
  13. {
  14. value: "选项2",
  15. label: "双皮奶",
  16. },
  17. {
  18. value: "选项3",
  19. label: "蚵仔煎",
  20. },
  21. {
  22. value: "选项4",
  23. label: "龙须面",
  24. },
  25. {
  26. value: "选项5",
  27. label: "北京烤鸭",
  28. },
  29. ],
  30. tableData: [
  31. {
  32. date: "2016-05-022016-05-022016-05-022016-05-02",
  33. name: "王小虎",
  34. address: "上海市普陀区金沙江路 1518 弄",
  35. },
  36. {
  37. date: "2016-05-04",
  38. name: "王小虎",
  39. address: "上海市普陀区金沙江路 1517 弄",
  40. },
  41. {
  42. date: "2016-05-01",
  43. name: "王小虎",
  44. address: "上海市普陀区金沙江路 1519 弄",
  45. },
  46. {
  47. date: "2016-05-03",
  48. name: "王小虎",
  49. address: "上海市普陀区金沙江路 1516 弄",
  50. },
  51. ],
  52. };
  53. },
  54. methods: {
  55. duanduan(value) {
  56. this.$message(value + "duanduan");
  57. },
  58. },
  59. };
  60. </script>
  61. <template>
  62. <el-container class="table-template-table">
  63. <el-header>
  64. <div class="table-header-top">
  65. <span>查询条件</span>
  66. <div>
  67. <el-select v-model="from.select" size="small" placeholder="请选择">
  68. <el-option
  69. v-for="item in options"
  70. :key="item.value"
  71. :label="item.label"
  72. :value="item.value"
  73. >
  74. </el-option>
  75. </el-select>
  76. <el-input
  77. v-model="from.input"
  78. size="small"
  79. placeholder="请输入内容"
  80. :readonly="isSearching"
  81. @change="onSearch"
  82. >
  83. <template #suffix>
  84. <i
  85. v-show="isSearching"
  86. class="el-input__icon el-icon-loading"
  87. ></i>
  88. <i
  89. v-show="!isSearching"
  90. class="el-input__icon el-icon-search"
  91. ></i>
  92. </template>
  93. </el-input>
  94. <el-button size="small">搜索</el-button>
  95. <el-button size="small">重置</el-button>
  96. </div>
  97. </div>
  98. <div class="table-header-bottom">
  99. <el-button size="small">新增</el-button>
  100. <el-button size="small">导入</el-button>
  101. <el-button size="small">导出</el-button>
  102. </div>
  103. </el-header>
  104. <el-main>
  105. <el-table :data="tableData">
  106. <el-table-column
  107. type="selection"
  108. width="55"
  109. fixed="left"
  110. align="center"
  111. show-overflow-tooltip
  112. >
  113. </el-table-column>
  114. <el-table-column prop="date" label="日期" show-overflow-tooltip>
  115. </el-table-column>
  116. <el-table-column prop="name" label="姓名" show-overflow-tooltip>
  117. </el-table-column>
  118. <el-table-column prop="address" label="地址" show-overflow-tooltip>
  119. </el-table-column>
  120. </el-table>
  121. </el-main>
  122. <el-footer>
  123. <el-pagination
  124. @size-change="handleSizeChange"
  125. @current-change="handleCurrentChange"
  126. :current-page="currentPage4"
  127. :page-sizes="[100, 200, 300, 400]"
  128. :page-size="100"
  129. layout="total, prev, pager, next, sizes, jumper"
  130. :total="400"
  131. >
  132. </el-pagination>
  133. </el-footer>
  134. </el-container>
  135. </template>
  136. <style scoped>
  137. .table-template-table .el-header {
  138. height: fit-content !important;
  139. padding-top: var(--padding);
  140. padding-bottom: var(--padding);
  141. border-bottom: 1px solid #dcdfe6;
  142. }
  143. .table-template-table .table-header-top {
  144. margin-bottom: var(--margin);
  145. display: flex;
  146. justify-content: space-between;
  147. align-items: center;
  148. }
  149. .table-template-table .table-header-top .el-select {
  150. width: 150px;
  151. margin-right: var(--margin);
  152. }
  153. .table-template-table .table-header-top .el-input {
  154. width: 250px;
  155. margin-right: var(--margin);
  156. }
  157. .table-template-table .el-main {
  158. padding: 0;
  159. }
  160. .table-template-table .el-main .el-table {
  161. width: 100%;
  162. height: 100%;
  163. }
  164. .table-template-table .el-footer {
  165. display: flex;
  166. justify-content: end;
  167. align-items: center;
  168. }
  169. </style>