cdaf0553 by 任超

style:整体样式的修改table高度自动计算

1 parent f2804a5b
1 import dialogBox from '@/components/DialogBox' 1 import dialogBox from '@/components/DialogBox'
2 import LbTable from '@/components/LbTable' 2 import LbTable from '@/components/LbTable'
3 import Theme from '@/components/Theme.vue' 3 import Theme from '@/components/Theme.vue'
4 import Breadcrumb from "@/components/Breadcrumb.vue";
4 // 引入按钮 5 // 引入按钮
5 import btn from '@/components/Button.vue' 6 import btn from '@/components/Button.vue'
6 import Popup from '@/components/Popup/index' 7 import Popup from '@/components/Popup/index'
...@@ -8,6 +9,7 @@ import MessageBox from '@/components/MessageBox/index.js' ...@@ -8,6 +9,7 @@ import MessageBox from '@/components/MessageBox/index.js'
8 export default { 9 export default {
9 install: (Vue) => { 10 install: (Vue) => {
10 Vue.component('dialogBox', dialogBox); 11 Vue.component('dialogBox', dialogBox);
12 Vue.component('Breadcrumb', Breadcrumb);
11 Vue.component('btn', btn); 13 Vue.component('btn', btn);
12 Vue.component('lbTable', LbTable); 14 Vue.component('lbTable', LbTable);
13 Vue.component('Theme', Theme); 15 Vue.component('Theme', Theme);
......
1 <template> 1 <template>
2 <div class="breadcrumb"> 2 <el-breadcrumb class="breadcrumb" separator-class="el-icon-arrow-right">
3 <el-breadcrumb class="app-breadcrumb" separator-class="el-icon-arrow-right"> 3 <transition-group name="breadcrumb">
4 <transition-group name="breadcrumb"> 4 <el-breadcrumb-item v-for="(item, index) in levelList" :key="item.path">
5 <el-breadcrumb-item v-for="(item, index) in levelList" :key="item.path"> 5 当前页面:
6 <span 6 <span @click.prevent="handleLink(item)">{{ item.meta.title }}</span>
7 v-if=" 7 </el-breadcrumb-item>
8 item.redirect === 'noRedirect' || index == levelList.length - 1 8 </transition-group>
9 " 9 </el-breadcrumb>
10 class="no-redirect"
11 >{{ item.meta.title }}</span
12 >
13 <a v-else @click.prevent="handleLink(item)">{{ item.meta.title }}</a>
14 </el-breadcrumb-item>
15 </transition-group>
16 </el-breadcrumb>
17 </div>
18 </template> 10 </template>
19 11
20 <script> 12 <script>
21 import pathToRegexp from "path-to-regexp"; 13 import pathToRegexp from "path-to-regexp";
22 14
23 export default { 15 export default {
24 data() { 16 data () {
25 return { 17 return {
26 levelList: null, 18 levelList: null,
27 }; 19 };
28 }, 20 },
29 watch: { 21 watch: {
30 $route() { 22 $route () {
31 this.getBreadcrumb(); 23 this.getBreadcrumb();
32 }, 24 },
33 }, 25 },
34 created() { 26 created () {
35 this.getBreadcrumb(); 27 this.getBreadcrumb();
36 }, 28 },
37 methods: { 29 methods: {
38 getBreadcrumb() { 30 getBreadcrumb () {
39 // only show routes with meta.title 31 // only show routes with meta.title
40 let matched = this.$route.matched.filter( 32 this.levelList = this.$route.matched.filter(
41 (item) => item.meta && item.meta.title 33 (item) => item.meta && item.meta.title
42 ); 34 ).slice(-1)
43 this.levelList = matched.filter(
44 (item) => item.meta && item.meta.title
45 );
46 }, 35 },
47 isDashboard(route) { 36 isDashboard (route) {
48 const name = route && route.name; 37 const name = route && route.name;
49 if (!name) { 38 if (!name) {
50 return false; 39 return false;
...@@ -53,65 +42,55 @@ export default { ...@@ -53,65 +42,55 @@ export default {
53 name.trim().toLocaleLowerCase() === "Dashboard".toLocaleLowerCase() 42 name.trim().toLocaleLowerCase() === "Dashboard".toLocaleLowerCase()
54 ); 43 );
55 }, 44 },
56 pathCompile(path) { 45 pathCompile (path) {
57 const { params } = this.$route; 46 const { params } = this.$route;
58 var toPath = pathToRegexp.compile(path); 47 var toPath = pathToRegexp.compile(path);
59 return toPath(params); 48 return toPath(params);
60 }, 49 }
61 handleLink(item) { 50 }
62 // const { redirect, path } = item; 51 }
63 // if (redirect) {
64 // this.$router.push(redirect);
65 // return;
66 // }
67 // this.$router.push(path);
68 },
69 },
70 };
71 </script> 52 </script>
72 53
73 <style lang="scss" scoped> 54 <style lang="scss" scoped>
74 .breadcrumb { 55 .breadcrumb {
75 margin: 15px auto 0;
76 box-sizing: border-box; 56 box-sizing: border-box;
77 text-indent: 16px; 57 text-indent: 10px;
58 background: linear-gradient(90deg, #0047B8 0%, rgba(0, 26, 95, 0.1) 100%);
59 line-height: 32px;
60 color: #FFFFFF;
78 } 61 }
62
63 /deep/.el-breadcrumb__inner {
64 color: #FFFFFF !important;
65 }
66
79 .breadcrumb1366 { 67 .breadcrumb1366 {
80 padding: 10px 0 !important; 68 padding: 10px 0 !important;
81 } 69 }
82 .isFullScreen{ 70
71 .isFullScreen {
83 width: calc(100% - 20px); 72 width: calc(100% - 20px);
84 margin: 0 auto; 73 margin: 0 auto;
85 padding: 10px!important; 74 padding: 10px !important;
86 } 75 }
76
87 .cur-location { 77 .cur-location {
88 font-size: 16px; 78 font-size: 16px;
89 color: white; 79 color: white;
90 line-height: 40px; 80 line-height: 40px;
91 float: left; 81 float: left;
82
92 img { 83 img {
93 position: relative; 84 position: relative;
94 top: 3px; 85 top: 3px;
95 margin-right: 4px; 86 margin-right: 4px;
96 } 87 }
97 } 88 }
98 .app-breadcrumb.el-breadcrumb { 89
99 display: inline-block;
100 font-size: 14px;
101 // line-height: 40px;
102 .no-redirect {
103 color: white;
104 cursor: text;
105 }
106 }
107 .el-breadcrumb__inner a, 90 .el-breadcrumb__inner a,
108 .el-breadcrumb__inner.is-link { 91 .el-breadcrumb__inner.is-link {
109 color: white; 92 color: white;
110 cursor: text; 93 cursor: text;
111 font-weight: normal; 94 font-weight: normal;
112 } 95 }
113 // .el-breadcrumb__inner a:hover,
114 // .el-breadcrumb__inner.is-link:hover {
115 // text-decoration: underline;
116 // }
117 </style> 96 </style>
......
...@@ -21,23 +21,20 @@ export default { ...@@ -21,23 +21,20 @@ export default {
21 </script> 21 </script>
22 <style scoped lang="scss"> 22 <style scoped lang="scss">
23 .button { 23 .button {
24 width: 80px; //适配4字按钮样式 24 width: 76px;
25 height: 32px; 25 height: 32px;
26 color: #ffffff; 26 color: #ffffff;
27 margin: 0 5px; 27 margin: 0 5px;
28 cursor: pointer;
28 } 29 }
29 30
30 .cx { 31 .cx {
31 background: url('../image/btn.png') no-repeat -4px -40px; 32 background: url('../image/btn.png') no-repeat 0 -34px;
32 cursor: pointer; 33 background-size: cover;
33 } 34 }
34 35
35 .cz { 36 .cz {
36 background: url('../image/btn.png') no-repeat -4px -4px; 37 background: url('../image/btn.png') no-repeat 0 0;
37 cursor: pointer; 38 background-size: cover;
38 }
39
40 .sb {
41 background: url('../image/btn.png') no-repeat -4px -112px;
42 } 39 }
43 </style> 40 </style>
......
...@@ -74,7 +74,7 @@ export default { ...@@ -74,7 +74,7 @@ export default {
74 }, 74 },
75 heightNum: { 75 heightNum: {
76 type: Number, 76 type: Number,
77 default: 345, 77 default: 355,
78 }, 78 },
79 maxHeight: { 79 maxHeight: {
80 type: Number, 80 type: Number,
...@@ -99,7 +99,7 @@ export default { ...@@ -99,7 +99,7 @@ export default {
99 }, 99 },
100 data () { 100 data () {
101 return { 101 return {
102 tableHeight: '', 102 tableHeight: 'auto',
103 mergeLine: {}, 103 mergeLine: {},
104 mergeIndex: {}, 104 mergeIndex: {},
105 selected: '' 105 selected: ''
...@@ -115,7 +115,6 @@ export default { ...@@ -115,7 +115,6 @@ export default {
115 }, 115 },
116 }, 116 },
117 methods: { 117 methods: {
118
119 // 单选 118 // 单选
120 singleElection (row) { 119 singleElection (row) {
121 this.selected = this.data.indexOf(row); 120 this.selected = this.data.indexOf(row);
...@@ -128,8 +127,37 @@ export default { ...@@ -128,8 +127,37 @@ export default {
128 }, 127 },
129 getHeight () { 128 getHeight () {
130 if (!this.heightNumSetting) { 129 if (!this.heightNumSetting) {
131 this.tableHeight = window.innerHeight - this.heightNum 130 let _this = this
131 if (this.heightNum) {
132 _this.$nextTick(() => {
133 window.addEventListener('resize', () => {
134 _this.tableHeight = _this.calcHeightx(230)
135 });
136 _this.tableHeight = _this.calcHeightx(230)
137 })
138 } else {
139 _this.tableHeight = window.innerHeight - _this.heightNum
140 }
141 }
142 },
143 calcHeightx (value, wappered = true) {
144 //项目自定义的公共header部分的高度,可忽略
145 let header = document.querySelector(".from-clues-header").offsetHeight;
146 //value为动态计算table界面高度时,减去的其他空白部分,需自行在调试找到临界值,剩下的就是table表格的高度(包含header+body部分)
147 value = value == undefined ? 100 : value;
148 let res = window.innerHeight - parseInt(header) - value;
149 if (wappered) {
150 //通过原生方法,获取dom节点的高度------获取element-ui table表格body的元素
151 let wapper = window.document.getElementsByClassName('el-table__body-wrapper');
152 //通过原生方法,获取dom节点的高度------获取element-ui table表格header的元素
153 let header = window.document.getElementsByClassName('el-table__header-wrapper');
154 //必须加延时,要不然赋不上去值
155 setTimeout(() => {
156 //通过上边计算得到的table高度的value值,减去table表格的header高度,剩下的通过dom节点直接强行赋给table表格的body
157 wapper[0].style.height = (value - header[0].clientHeight)
158 }, 100)
132 } 159 }
160 return res;
133 }, 161 },
134 clearSelection () { 162 clearSelection () {
135 this.$refs.elTable.clearSelection() 163 this.$refs.elTable.clearSelection()
......

3.32 KB | W: | H:

5.95 KB | W: | H:

  • 2-up
  • Swipe
  • Onion skin
1 <template> 1 <template>
2 <section class="app-main"> 2 <section class="app-main">
3 <!-- <Breadcrumb v-if="judgeRoute()" /> -->
4 <transition name="fade-transform" mode="out-in"> 3 <transition name="fade-transform" mode="out-in">
5 <router-view /> 4 <router-view />
6 </transition> 5 </transition>
7 </section> 6 </section>
8 </template> 7 </template>
9 <script> 8 <script>
10 import Breadcrumb from "@/components/Breadcrumb.vue"; 9
11 export default { 10 export default {
12 name: 'AppMain', 11 name: 'AppMain',
13 components: {
14 Breadcrumb
15 },
16 methods: {
17 judgeRoute(){
18 if (this.$route.path == '/home' || this.$route.path.indexOf('jsbwcx') > -1) {
19 return false
20 }else{
21 return true
22 }
23 }
24 },
25 computed: { 12 computed: {
26 key () { 13 key () {
27 return this.$route.path 14 return this.$route.path
......
...@@ -79,7 +79,8 @@ export default { ...@@ -79,7 +79,8 @@ export default {
79 .xuanzhong { 79 .xuanzhong {
80 background: url('~@/image/selNavbar.png') no-repeat; 80 background: url('~@/image/selNavbar.png') no-repeat;
81 background-size: 100% 100%; 81 background-size: 100% 100%;
82 color: #09C39A !important; 82 color: #fff;
83 font-weight: 700;
83 } 84 }
84 85
85 /deep/.el-menu-item:hover { 86 /deep/.el-menu-item:hover {
......
...@@ -36,6 +36,7 @@ export default { ...@@ -36,6 +36,7 @@ export default {
36 position: relative; 36 position: relative;
37 height: 100%; 37 height: 100%;
38 width: 100%; 38 width: 100%;
39 min-width: 1280px;
39 background: url('~@/image/bg.png') no-repeat; 40 background: url('~@/image/bg.png') no-repeat;
40 background-size: 100% 100%; 41 background-size: 100% 100%;
41 padding: 12px; 42 padding: 12px;
...@@ -48,6 +49,7 @@ export default { ...@@ -48,6 +49,7 @@ export default {
48 } 49 }
49 50
50 .appMain { 51 .appMain {
52 min-width: 1290px;
51 height: calc(100vh - 101px) !important; 53 height: calc(100vh - 101px) !important;
52 box-sizing: border-box; 54 box-sizing: border-box;
53 55
......
...@@ -214,6 +214,15 @@ table td { ...@@ -214,6 +214,15 @@ table td {
214 color: #4A4A4A; 214 color: #4A4A4A;
215 } 215 }
216 216
217 .twoLineCls {
218 text-overflow: -o-ellipsis-lastline;
219 overflow: hidden;
220 text-overflow: ellipsis;
221 display: -webkit-box;
222 -webkit-line-clamp: 2;
223 line-clamp: 2;
224 -webkit-box-orient: vertical;
225 }
217 226
218 .el-table tr td { 227 .el-table tr td {
219 font-size: 14px; 228 font-size: 14px;
...@@ -426,11 +435,17 @@ table td { ...@@ -426,11 +435,17 @@ table td {
426 .el-select-dropdown__item, 435 .el-select-dropdown__item,
427 .el-menu--horizontal .el-menu .el-submenu__title { 436 .el-menu--horizontal .el-menu .el-submenu__title {
428 background: url("~@/image/slitembg.png") no-repeat; 437 background: url("~@/image/slitembg.png") no-repeat;
438 height: 26px;
439 line-height: 26px;
429 background-size: 100% 100%; 440 background-size: 100% 100%;
430 margin: 5px 0; 441 margin-bottom: 7px;
431 color: #02D9FD !important; 442 color: #02D9FD !important;
432 } 443 }
433 444
445 .el-select-dropdown {
446 top: 203px !important;
447 }
448
434 .el-menu--horizontal .el-menu--popup .el-menu-item:not(.is-disabled):hover, 449 .el-menu--horizontal .el-menu--popup .el-menu-item:not(.is-disabled):hover,
435 .el-select-dropdown__item:hover, 450 .el-select-dropdown__item:hover,
436 .el-select-dropdown__item.selected, 451 .el-select-dropdown__item.selected,
...@@ -439,4 +454,10 @@ table td { ...@@ -439,4 +454,10 @@ table td {
439 background-size: 100% 100%; 454 background-size: 100% 100%;
440 color: #FFFFFF !important; 455 color: #FFFFFF !important;
441 font-weight: 700; 456 font-weight: 700;
457 }
458
459 .el-select-dropdown__item.hover,
460 .el-select-dropdown__item:hover {
461 background-color: transparent !important;
462 ;
442 } 463 }
...\ No newline at end of file ...\ No newline at end of file
......
...@@ -40,16 +40,16 @@ ...@@ -40,16 +40,16 @@
40 40
41 //*****start*通用表单查询条件,列表样式******// 41 //*****start*通用表单查询条件,列表样式******//
42 .from-clues { 42 .from-clues {
43 min-width: 1280px;
44 height: 100%; 43 height: 100%;
45 width: 100%; 44 width: 100%;
45 min-width: 1280px;
46 box-sizing: border-box; 46 box-sizing: border-box;
47 overflow-x: hidden; 47 overflow-x: hidden;
48 padding: 2px; 48 padding: 2px;
49 49
50 &-header { 50 &-header {
51 width: 100%; 51 width: 100%;
52 padding: 20px 30px 20px 20px; 52 padding: 5px 30px 20px 20px;
53 box-sizing: border-box; 53 box-sizing: border-box;
54 background: url("~@/image/formHeader.png") no-repeat; 54 background: url("~@/image/formHeader.png") no-repeat;
55 background-size: 100% 100%; 55 background-size: 100% 100%;
...@@ -196,4 +196,4 @@ ...@@ -196,4 +196,4 @@
196 .btnColRight { 196 .btnColRight {
197 box-sizing: border-box; 197 box-sizing: border-box;
198 text-align: right; 198 text-align: right;
199 } 199 }
...\ No newline at end of file ...\ No newline at end of file
......
...@@ -8,7 +8,7 @@ class data extends filter { ...@@ -8,7 +8,7 @@ class data extends filter {
8 { 8 {
9 prop: 'jcjg', 9 prop: 'jcjg',
10 label: '检查结果', 10 label: '检查结果',
11 width: 100, 11 width: 90,
12 render: (h, scope) => { 12 render: (h, scope) => {
13 return ( 13 return (
14 <div> 14 <div>
...@@ -22,7 +22,7 @@ class data extends filter { ...@@ -22,7 +22,7 @@ class data extends filter {
22 { 22 {
23 prop: 'rkjg', 23 prop: 'rkjg',
24 label: '入库结果', 24 label: '入库结果',
25 width: 100, 25 width: 80,
26 render: (h, scope) => { 26 render: (h, scope) => {
27 return ( 27 return (
28 <div> 28 <div>
...@@ -36,12 +36,12 @@ class data extends filter { ...@@ -36,12 +36,12 @@ class data extends filter {
36 { 36 {
37 prop: "areacode", 37 prop: "areacode",
38 label: "行政区代码", 38 label: "行政区代码",
39 width: 100, 39 width: 70,
40 }, 40 },
41 { 41 {
42 prop: "areaName", 42 prop: "areaName",
43 label: "行政区名称", 43 label: "行政区名称",
44 width: 100, 44 width: 70,
45 }, 45 },
46 { 46 {
47 prop: "bizMsgid", 47 prop: "bizMsgid",
...@@ -50,10 +50,12 @@ class data extends filter { ...@@ -50,10 +50,12 @@ class data extends filter {
50 { 50 {
51 prop: "createdate", 51 prop: "createdate",
52 label: "创建时间", 52 label: "创建时间",
53 width: 140,
53 }, 54 },
54 { 55 {
55 prop: "recflowid", 56 prop: "recflowid",
56 label: "业务流水号", 57 label: "业务流水号",
58 width: 95,
57 }, 59 },
58 { 60 {
59 prop: "estatenum", 61 prop: "estatenum",
...@@ -63,14 +65,23 @@ class data extends filter { ...@@ -63,14 +65,23 @@ class data extends filter {
63 { 65 {
64 prop: "rectype", 66 prop: "rectype",
65 label: "业务编码", 67 label: "业务编码",
68 width: 70,
66 }, 69 },
67 { 70 {
68 prop: "rectypeName", 71 prop: "rectypeName",
69 label: "业务名称", 72 label: "业务名称",
73 render: (h, scope) => {
74 return (
75 <div>
76 {scope.row.rectypeName}
77 </div>
78 )
79 }
70 }, 80 },
71 { 81 {
72 prop: "receiveDate", 82 prop: "receiveDate",
73 label: "接收时间", 83 label: "接收时间",
84 width: 140
74 } 85 }
75 ] 86 ]
76 } 87 }
......
...@@ -4,6 +4,9 @@ ...@@ -4,6 +4,9 @@
4 <!-- 头部搜索 --> 4 <!-- 头部搜索 -->
5 <div class="from-clues-header"> 5 <div class="from-clues-header">
6 <el-form ref="ruleForm" :model="form" label-width="100px"> 6 <el-form ref="ruleForm" :model="form" label-width="100px">
7 <el-form-item>
8 <Breadcrumb />
9 </el-form-item>
7 <el-row class="mb-5"> 10 <el-row class="mb-5">
8 <el-col :span="6"> 11 <el-col :span="6">
9 <el-form-item label="行政区" prop="qxdm"> 12 <el-form-item label="行政区" prop="qxdm">
...@@ -77,7 +80,7 @@ ...@@ -77,7 +80,7 @@
77 <el-form-item> 80 <el-form-item>
78 <btn nativeType="cz" @click="resetForm">重置</btn> 81 <btn nativeType="cz" @click="resetForm">重置</btn>
79 <btn nativeType="cx" @click="featchData">查询</btn> 82 <btn nativeType="cx" @click="featchData">查询</btn>
80 <btn nativeType="sb">入库</btn> 83 <btn nativeType="cx">入库</btn>
81 </el-form-item> 84 </el-form-item>
82 </el-col> 85 </el-col>
83 </el-row> 86 </el-row>
...@@ -173,7 +176,7 @@ export default { ...@@ -173,7 +176,7 @@ export default {
173 .concat([ 176 .concat([
174 { 177 {
175 label: "操作", 178 label: "操作",
176 width: "160", 179 width: "90",
177 render: (h, scope) => { 180 render: (h, scope) => {
178 return ( 181 return (
179 <div> 182 <div>
......