大屏组件开发
This commit is contained in:
		| @@ -18,6 +18,7 @@ | ||||
|   import Summary10 from './components/Summary10' | ||||
|   import Summary11 from './components/Summary11' | ||||
|   import Summary12 from './components/Summary12' | ||||
|   import Summary13 from './components/Summary13' | ||||
|  | ||||
|   export default { | ||||
|     name: 'AiDvSummary', | ||||
| @@ -35,7 +36,8 @@ | ||||
|       Summary9, | ||||
|       Summary10, | ||||
|       Summary11, | ||||
|       Summary12 | ||||
|       Summary12, | ||||
|       Summary13 | ||||
|     }, | ||||
|  | ||||
|     props: { | ||||
|   | ||||
							
								
								
									
										102
									
								
								components/layout/AiDvSummary/components/Summary13.vue
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										102
									
								
								components/layout/AiDvSummary/components/Summary13.vue
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,102 @@ | ||||
| <template> | ||||
|   <div class="summary13"> | ||||
|     <div class="summary13-item" v-for="(item, index) in data" :key="index" v-if="index < 4"> | ||||
|       <h2>{{ item[keys] }}:</h2> | ||||
|       <p>{{ item[value] }}</p> | ||||
|     </div> | ||||
|   </div> | ||||
| </template> | ||||
|  | ||||
| <script> | ||||
|   export default { | ||||
|     name: 'summary13', | ||||
|  | ||||
|     props: { | ||||
|       data: { | ||||
|         type: Array, | ||||
|         default: () => [] | ||||
|       }, | ||||
|  | ||||
|       keys: { | ||||
|         type: String, | ||||
|         default: 'key' | ||||
|       }, | ||||
|  | ||||
|       value: { | ||||
|         type: String, | ||||
|         default: 'value' | ||||
|       } | ||||
|     }, | ||||
|  | ||||
|     data () { | ||||
|       return { | ||||
|       } | ||||
|     }, | ||||
|  | ||||
|     methods: { | ||||
|     } | ||||
|   } | ||||
| </script> | ||||
|  | ||||
| <style lang="scss" scoped> | ||||
|   .summary13 { | ||||
|     display: flex; | ||||
|     flex-wrap: wrap; | ||||
|     justify-content: center; | ||||
|     align-items: center; | ||||
|     width: 100%; | ||||
|     height: 100%; | ||||
|  | ||||
|     div { | ||||
|       box-sizing: border-box; | ||||
|     } | ||||
|  | ||||
|     .summary13-item { | ||||
|       display: flex; | ||||
|       position: relative; | ||||
|       align-items: center; | ||||
|       justify-content: center; | ||||
|       width: 150px; | ||||
|       height: 40px; | ||||
|       text-align: center; | ||||
|       color: #fff; | ||||
|       font-size: 14px; | ||||
|       border: 1px solid #717171; | ||||
|  | ||||
|       h2 { | ||||
|         color: #C4D8DB; | ||||
|         font-size: 14px; | ||||
|         font-weight: normal; | ||||
|       } | ||||
|  | ||||
|       p { | ||||
|         color: #C4D8DB; | ||||
|         font-size: 14px; | ||||
|       } | ||||
|  | ||||
|       &::after { | ||||
|         position: absolute; | ||||
|         left: -1px; | ||||
|         top: 50%; | ||||
|         z-index: 11; | ||||
|         width: 1px; | ||||
|         height: 10px; | ||||
|         transform: translateY(-50%); | ||||
|         background: #0c0c0c; | ||||
|         content: ' '; | ||||
|       } | ||||
|  | ||||
|       &::before { | ||||
|         position: absolute; | ||||
|         right: - 1px; | ||||
|         top: 50%; | ||||
|         z-index: 11; | ||||
|         width: 1px; | ||||
|         height: 10px; | ||||
|         transform: translateY(-50%); | ||||
|         background: #0c0c0c; | ||||
|         content: ' '; | ||||
|       } | ||||
|     } | ||||
|   } | ||||
| </style> | ||||
| @@ -119,7 +119,7 @@ | ||||
|       align-items: center; | ||||
|       width: 100%; | ||||
|       height: 40px; | ||||
|       padding: 0 20px; | ||||
|       padding: 0 16px; | ||||
|       background: rgba(70, 70, 70, 0.35); | ||||
|  | ||||
|       span { | ||||
| @@ -148,7 +148,7 @@ | ||||
|         align-items: center; | ||||
|         width: 100%; | ||||
|         height: 52px; | ||||
|         padding: 0 20px; | ||||
|         padding: 0 16px; | ||||
|         box-sizing: border-box; | ||||
|  | ||||
|         &.stripe:nth-of-type(2n) { | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| <template> | ||||
|   <div class="AiRanking"> | ||||
|     <div class="AiRanking-item" v-for="(item, index) in list" :key="index"> | ||||
|     <div class="AiRanking-item" v-for="(item, index) in list" :key="index" :class="'AiRanking-item' + (index + 1)"> | ||||
|       <i>{{ index + 1 }}</i> | ||||
|       <h2>{{ item.name }}</h2> | ||||
|       <span>{{ item.value }}</span> | ||||
| @@ -78,9 +78,24 @@ | ||||
|       height: 36px; | ||||
|       margin-bottom: 16px; | ||||
|       padding-right: 18px; | ||||
|       background: url(./asset/ranking1.png) no-repeat; | ||||
|       background: url(./asset/ranking4.png) no-repeat; | ||||
|       background-size: 100% 100%; | ||||
|  | ||||
|       &.AiRanking-item1 { | ||||
|         background: url(./asset/ranking1.png) no-repeat; | ||||
|         background-size: 100% 100%; | ||||
|       } | ||||
|  | ||||
|       &.AiRanking-item2 { | ||||
|         background: url(./asset/ranking2.png) no-repeat; | ||||
|         background-size: 100% 100%; | ||||
|       } | ||||
|  | ||||
|       &.AiRanking-item3 { | ||||
|         background: url(./asset/ranking3.png) no-repeat; | ||||
|         background-size: 100% 100%; | ||||
|       } | ||||
|  | ||||
|       .AiRanking-item__rate--wrapper { | ||||
|         flex: 1; | ||||
|         background: #6F7171; | ||||
|   | ||||
| @@ -182,7 +182,7 @@ export default { | ||||
|   data() { | ||||
|     return { | ||||
|       borderList: ['border0', 'border1', 'border2', 'border3', 'border4', 'border5', 'border6'],//边框待选项 | ||||
|       summaryList: ['summary0', 'summary1', 'summary2', 'summary3', 'summary4', 'summary6', 'summary5', 'summary7', 'summary8', 'summary9', 'summary10', 'summary11', 'summary12'],//汇总待选项 | ||||
|       summaryList: ['summary0', 'summary1', 'summary2', 'summary3', 'summary4', 'summary6', 'summary5', 'summary7', 'summary8', 'summary9', 'summary10', 'summary11', 'summary12', 'summary13'],//汇总待选项 | ||||
|       //是否显示排名 | ||||
|       tableStatus: [ | ||||
|         {label: '是', value: '1'}, | ||||
|   | ||||
| @@ -3,11 +3,6 @@ | ||||
|     <div ref="AiEchart" class="chart" :style="{minWidth:grid.width,minHeight:grid.height}"/> | ||||
|     <slot v-if="$slots.default"/> | ||||
|     <render-component v-else-if="ops.render" :render="ops.render" :options="chartOptions" :data="data"/> | ||||
|     <div class="AiEchart-legend" v-if="legend === '1'"> | ||||
|       <div class="AiEchart-legend__item">居民好友:5230</div> | ||||
|       <div class="AiEchart-legend__item">居民好友:5230</div> | ||||
|       <div class="AiEchart-legend__item">居民好友:5230</div> | ||||
|     </div> | ||||
|   </section> | ||||
| </template> | ||||
|  | ||||
| @@ -23,10 +18,6 @@ export default { | ||||
|     series: Object, | ||||
|     theme: { | ||||
|       default: '0' | ||||
|     }, | ||||
|     legend: { | ||||
|       type: String, | ||||
|       default: '0' | ||||
|     } | ||||
|   }, | ||||
|   components: { | ||||
| @@ -124,8 +115,6 @@ export default { | ||||
|         let oldDims = Object.keys(old?.[0] || {})?.toString(), | ||||
|             current = Object.keys(v?.[0] || {})?.toString() | ||||
|         this.getChartData(oldDims != current) | ||||
|  | ||||
|         console.log(data) | ||||
|       } | ||||
|     }, | ||||
|  | ||||
| @@ -234,53 +223,5 @@ export default { | ||||
|     height: 100%; | ||||
|     min-height: 100px; | ||||
|   } | ||||
|  | ||||
|   .AiEchart-legend { | ||||
|     width: 140px; | ||||
|     margin-left: 20px; | ||||
|     padding-top: 20px; | ||||
|  | ||||
|     div { | ||||
|       display: flex; | ||||
|       position: relative; | ||||
|       align-items: center; | ||||
|       justify-content: center; | ||||
|       height: 40px; | ||||
|       margin-bottom: 8px; | ||||
|       text-align: center; | ||||
|       color: #fff; | ||||
|       font-size: 14px; | ||||
|       border: 1px solid #717171; | ||||
|       box-sizing: border-box; | ||||
|  | ||||
|       &:last-child { | ||||
|         margin-bottom: 0; | ||||
|       } | ||||
|  | ||||
|       &::after { | ||||
|         position: absolute; | ||||
|         left: -1px; | ||||
|         top: 50%; | ||||
|         z-index: 11; | ||||
|         width: 1px; | ||||
|         height: 10px; | ||||
|         transform: translateY(-50%); | ||||
|         background: #0c0c0c; | ||||
|         content: ' '; | ||||
|       } | ||||
|  | ||||
|       &::before { | ||||
|         position: absolute; | ||||
|         right: - 1px; | ||||
|         top: 50%; | ||||
|         z-index: 11; | ||||
|         width: 1px; | ||||
|         height: 10px; | ||||
|         transform: translateY(-50%); | ||||
|         background: #0c0c0c; | ||||
|         content: ' '; | ||||
|       } | ||||
|     } | ||||
|   } | ||||
| } | ||||
| </style> | ||||
|   | ||||
		Reference in New Issue
	
	Block a user