张延森 3 lat temu
rodzic
commit
bf789ddbf5

+ 31
- 0
src/views/register/components/InlineItem.vue Wyświetl plik

@@ -0,0 +1,31 @@
1
+<template>
2
+  <div class="inline-item">
3
+    <div v-if="label">{{label}}</div>
4
+    <div><slot></slot></div>
5
+  </div>
6
+</template>
7
+
8
+<script>
9
+export default {
10
+  name: 'InlineItem',
11
+  props: {
12
+    label: String,
13
+  },
14
+}
15
+</script>
16
+
17
+<style lang="scss" scoped>
18
+.inline-item {
19
+  display: inline-block;
20
+  margin-bottom: 1em;
21
+  margin-right: 1.6em;
22
+
23
+  & > div {
24
+    &:last-child {
25
+      margin-left: .6em;
26
+    }
27
+
28
+    display: inline-block;
29
+  }
30
+}
31
+</style>

+ 51
- 37
src/views/register/list.vue Wyświetl plik

@@ -1,49 +1,60 @@
1 1
 <template>
2 2
   <div class="body">
3 3
     <el-card class="box-card" shadow="never">
4
-      姓名:
5
-      <el-input v-model="name" style="width: 200px; margin-right: 20px" />
6
-      手机号:<el-input v-model="phone" style="width: 200px; margin-right: 20px" />
7
-      身份:
8
-      <el-select v-model="personType" style="margin-right:8px" filterable placeholder="请选择">
9
-        <el-option
10
-          v-for="item in typeOptions"
11
-          :key="item.value"
12
-          :label="item.value"
13
-          :value="item.label"
4
+      <inline-item label="姓名">
5
+        <el-input v-model="name" style="width: 200px" />
6
+      </inline-item>
7
+
8
+      <inline-item label="手机号">
9
+        <el-input v-model="phone" style="width: 200px" />
10
+      </inline-item>
11
+      <inline-item label="身份">
12
+        <el-select v-model="personType" style="margin-right:8px" filterable placeholder="请选择">
13
+          <el-option
14
+            v-for="item in typeOptions"
15
+            :key="item.value"
16
+            :label="item.value"
17
+            :value="item.label"
18
+          />
19
+        </el-select>
20
+      </inline-item>
21
+      <inline-item label="报名地区">
22
+        <el-cascader
23
+          v-model="area2"
24
+          :options="options"
25
+          :props="{ checkStrictly: true }"
26
+          @expand-change="changeExpand"
27
+          @change="handleChange"
28
+        />
29
+      </inline-item>
30
+      <inline-item label="签到时间">
31
+        <el-date-picker
32
+          v-model="daterange"
33
+          type="daterange"
34
+          range-separator="至"
35
+          start-placeholder="开始日期"
36
+          end-placeholder="结束日期"
37
+          value-format="yyyy-MM-dd"
38
+          style="margin-right: 20px"
39
+          @change="dateChange"
14 40
         />
15
-      </el-select>
16
-      报名地区:
17
-      <el-cascader
18
-        v-model="area2"
19
-        :options="options"
20
-        :props="{ checkStrictly: true }"
21
-        @expand-change="changeExpand"
22
-        @change="handleChange"
23
-      />
24
-      签到时间:<el-date-picker
25
-        v-model="daterange"
26
-        type="daterange"
27
-        range-separator="至"
28
-        start-placeholder="开始日期"
29
-        end-placeholder="结束日期"
30
-        value-format="yyyy-MM-dd"
31
-        style="margin-right: 20px"
32
-        @change="dateChange"
33
-      />
34
-      <div style="float:right">
35
-        <el-button type="primary" @click="onSearch">查询</el-button>
36
-        <el-button @click="onReset">重置</el-button>
37
-        <el-button @click="excelOut">导出</el-button>
38
-      </div>
41
+      </inline-item>
42
+
43
+      <inline-item>
44
+        <div>
45
+          <el-button type="primary" @click="onSearch">查询</el-button>
46
+          <el-button @click="onReset">重置</el-button>
47
+          <el-button @click="excelOut">导出</el-button>
48
+        </div>
49
+      </inline-item>
39 50
     </el-card>
40 51
     <el-table stripe :data="tableData" border style="width: 100%">
41
-      <el-table-column prop="name" label="姓名" />
42
-      <el-table-column prop="phone" width="110" label="手机号" />
52
+      <el-table-column prop="name" label="姓名" width="200" />
53
+      <el-table-column prop="phone" width="200" label="手机号" />
43 54
       <el-table-column prop="personType" width="110" label="身份" />
44 55
       <el-table-column prop="areaName" label="所在地" />
45 56
       <el-table-column prop="interestTo" label="意向产品" />
46
-      <el-table-column prop="createDate" label="报名时间">
57
+      <el-table-column prop="createDate" label="报名时间" width="200">
47 58
         <template slot-scope="scope">{{ formate(scope.row.createDate) }}</template>
48 59
       </el-table-column>
49 60
     </el-table>
@@ -66,6 +77,9 @@ import { getCityList } from '@/api/city'
66 77
 
67 78
 import dayjs from 'dayjs'
68 79
 export default {
80
+  components: {
81
+    InlineItem: () => import('./components/InlineItem.vue')
82
+  },
69 83
   data() {
70 84
     return {
71 85
       typeOptions: [