项目平台——项目首页设计(五)


这里写目录标题

  • 一、页面成果图展示
  • 二、滚动条组件的使用
  • 三、页面设计
    • 1、需要4个盒子
    • 2、项目名称样式设计
    • 3、对基本信息、bug统计、执行记录进行样式设计
    • 4、基本信息
    • 5、bug统计
  • 四、echarts使用
    • 1、安装
    • 2、折线图的使用

一、页面成果图展示

项目平台——项目首页设计(五)_第1张图片
项目平台——项目首页设计(五)_第2张图片

二、滚动条组件的使用

当内容超过屏幕高度时自动产生滚动条

<template>
<!-- 当内容超过屏幕高度时自动产生滚动条 -->
  <el-scrollbar>
	...
	...
	... 
  </el-scrollbar>
</template>

三、页面设计

1、需要4个盒子

项目平台——项目首页设计(五)_第3张图片

项目平台——项目首页设计(五)_第4张图片

2、项目名称样式设计

<!-- 项目名称 -->
<!-- 通过proinfo和pro中都可以获取项目的信息 -->
<div class="pro_title">{{pro.name}}</div>
/* 项目标题样式 */
	.pro_title{
		height: 50px;  行高
		background: #ececeb;  背景
		text-align: center;   居中
		font: bold 28px/50px '微软雅黑';  字体加粗、大小/行高、字体
		color: rgb(21, 192, 135);
	}

3、对基本信息、bug统计、执行记录进行样式设计

/* 小标题样式 */
	.title{
		/* 加粗 */
		font-weight: bold;
		line-height: 40px;
		color: #363636;
	}

4、基本信息

element-plus中描述列表使用
项目平台——项目首页设计(五)_第5张图片

element-plus中卡片组件使用
项目平台——项目首页设计(五)_第6张图片

从后端接口的返回值可以看到,前端不必要定义所有的字段
项目平台——项目首页设计(五)_第7张图片
描述列表中label指定描述列表的名字,后面的值对应接口返回的值
项目平台——项目首页设计(五)_第8张图片
通过v-for实现

<div class="title">【基本信息】</div>
	<el-card body-style="padding:0">
		<el-descriptions border column="4">
		<el-descriptions-item label="创建人">{{pro.leader}}</el-descriptions-item>
		<el-descriptions-item label="创建时间">{{pro.create_time}}</el-descriptions-item>
		<el-descriptions-item v-for='(item,index) in proinfo.info' :key="index" :label="item.name">{{item.value}}</el-descriptions-item>
  		</el-descriptions>
	</el-card>

结果展示
在这里插入图片描述

element-plus中layout布局的使用
项目平台——项目首页设计(五)_第9张图片

<div class="title">【基本信息】</div>
	<el-card body-style="padding:0">
		<el-descriptions border column="4">
		<el-descriptions-item label="创建人">{{pro.leader}}</el-descriptions-item>
		<el-descriptions-item label="创建时间">{{pro.create_time}}</el-descriptions-item>
		<el-descriptions-item v-for='(item,index) in proinfo.info' :key="index" :label="item.name">{{item.value}}</el-descriptions-item>
  		</el-descriptions>

		<el-row :gutter="20">
			<el-col :span="4" v-for="(item,index) in proinfo.info" :key="index">
				<div class="info_chart">
					<el-progress type="dashboard" :percentage="100" color="#00aa7f">
						<template #default>
							<span class="percentage-value">
								<b style="color:#00aa7f">{{item.value}}</b>
								<span></span>
							</span>
							<span class="percentage-label">{{item.name}}</span>
						</template>
					</el-progress>
				</div>
			</el-col>
			<el-col :span="4"><div class="info_chart" /></el-col>
			
		</el-row>

项目平台——项目首页设计(五)_第10张图片

5、bug统计

<div class="title">【bug统计】</div>
	<el-card body-style="padding:0">
		<el-descriptions border column="4">
		<el-descriptions-item v-for='(item,index) in proinfo.bugs' :key="index" :label="item.name">{{item.value}}</el-descriptions-item>
  		</el-descriptions>
	</el-card>

在这里插入图片描述

<div class="title">【bug统计】</div>
	<el-card body-style="padding:0">
		<el-descriptions border column="4">
		<el-descriptions-item v-for='(item,index) in proinfo.bugs' :key="index" :label="item.name">{{item.value}}</el-descriptions-item>
  		</el-descriptions>

		<el-row :gutter="20">
			<el-col :span="6" v-for="(item,index) in proinfo.bugs" :key="index">
				<div class="info_chart">
					<el-progress type="circle" :percentage="100" color="#87CEFA">
						<template #default>
							<span class="percentage-value">
								<b style="color:#00aa7f">{{item.value}}</b>
								<span></span>
							</span>
							<span class="percentage-label">{{item.name}}</span>
						</template>
					</el-progress>
				</div>
			</el-col>
			<el-col :span="4"><div class="info_chart" /></el-col>
			
		</el-row>
	</el-card>

在这里插入图片描述

<style scpped>
	/* 项目标题样式 */
	.pro_title{
		height: 50px;
		background: #ececeb;
		text-align: center;
		font: bold 28px/50px '微软雅黑';
		color: rgb(21, 192, 135);
	}
	/* 小标题样式 */
	.title{
		/* 加粗 */
		font-weight: bold;
		line-height: 40px;
		color: #363636;
	}
	/* 图表的样式 */
	.info_chart{
		background: rgb(255, 255, 255);
		/* height: 150px; */
		margin: 5px;
		text-align: center;
		padding: 10px,0px;
	}

	.percentage-value {
		display: block;
		margin-top: 10px;
		font-size: 20px;
		}
		.percentage-label {
		display: block;
		margin-top: 10px;
		font-size: 12px;
	}
</style>

四、echarts使用

1、安装

项目平台——项目首页设计(五)_第11张图片

2、折线图的使用

// 编写图表工具函数
import * as echarts from 'echarts';
import { useFormLabelWidth } from 'element-plus/es/components/form/src/utils';

export default{
    // 折线图
    chart1(ele,label,datas){
        // ele:渲染图标的元素(盒子)
        // label:x轴的刻度文字
        // datas:数据
        // 初始化一个图表对象
        const myChart = echarts.init(ele);
        const option={
            // 编写图标的配置
            xAxis: {
                type: 'category',
                boundaryGap: false,
                data: label
            },
            yAxis: {
                type: 'value'
            },
            series: [
                {
                data: datas,
                type: 'line',
                areaStyle: {}
                }
            ]
        };
        // 渲染图表
        option && myChart.setOption(option);

    },

你可能感兴趣的:(Vue项目,vue.js,前端,javascript)